¿Puedo usar un filter de borrado / borrado de git para convertir files binarys a varios files y viceversa?

Tengo un file binary que se puede deserializar en una representación de text junto con algunos files de image de apoyo.

¿Puedo usar la mancha y limpiar para hacer esta conversión de 1 file a muchos, y luego de vuelta?

P.ej:

El file binary:

  • Demo.bin

Deserializaría a:

  • Demo.txt (importante para poder hacer diffs en este file)
  • Demo.Picture1.bmp
  • Demo.Picture2.gif

La respuesta corta es no". La respuesta más larga es más complicada: seguro, puedes escribir esos files en el tree de trabajo todo lo que quieras. Sin embargo, no puedes hacer que terminen en el índice , por lo que, por definición, serán files sin seguimiento. Podría tratar de sobrescribir los files de índice existentes, pero eso estaría plagado de peligros.

(Tanto el controller de filter de estilo anterior como el filter-como-process de nuevo estilo son esperados / asumidos (por Git) para trabajar en una ruta especificada a la vez. Usando el método de process, tal vez podría demorar el tocar el índice hasta que el filter finaliza, lo que ocurrirá justo antes de que Git suponga que ha terminado con lo que sea que esté haciendo, ya sea que necesite borrones o limpiezas).