Articles of git filter

¿Cómo save un file como un tree git en lugar de un blob?

Como muchos formattings de file tienen una estructura tipo tree (por ejemplo, XML, tar, incluso MP3 si consideras dividir tags y frameworks como hojas), me preguntaba si hay alguna manera de dejar que git los almacene como objects de tree en lugar de blobs, explotar la estructura, por ejemplo, para diferir y fusionar. Hasta ahora, […]

Directorio relativo para un filter GIT?

Tengo el siguiente filter GIT definido en el file .gitconfig mi repository que he importado. [filter "csprojarrange"] clean = CsProjArrange Sin embargo, solo funciona si CsProjArrange.exe es parte de mi PATH, y no si CsProjArrange.exe está registrado en el directory raíz del repository. ¿Es posible hacer que los filters GIT funcionen en directorys relativos?

¿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 […]

¿Cómo hago que git inserte la información de la versión en un file?

En mi repository de git, me gustaría insert la "versión actual" en un file automáticamente. Para este fin, hice un filter [filter "version"] clean = perl -pe 's[\\$version:.*\\$][\\$version:\\$]' smudge = "perl -pe 'chomp($v=qx(git describe)); s[\\$version:.*\\$][\\$version:$v\\$]'" Esto funciona como un encanto para mí, pero ¿cómo puedo propagar esto a otras personas que podrían clonar mi repository? […]

¿Cómo aplicar globalmente un filter textconv a todos los files de text?

Sé por medio de gitattributes diff=… uno puede establecer files especificados por un patrón de nombre para usar un filter textconv especificado para git-diff et al., Pero ¿hay alguna manera de hacer que git-diff use un filter de diff específico para todos los files? git determina que son files de text, sin importar su nombre, […]

Cambiar TODOS los posts de compromiso enviados

Recientemente me mudé de TFS a GIT y todos nuestros posts de confirmación están formateados "^ 88888 mi post de confirmación" Estoy tratando de cambiar el ^ en TODOS los posts de git a un #. Mirando la documentation de git encontré que podía usar un command git-filter pero no estoy seguro de cómo usarlo […]

¿Cómo protegería un determinado file para que no sea procesado por un filter git?

Digamos que tengo ese filter git que hace una limpieza en los files XML usados ​​en mi proyecto. La configuration se hace así: *.xml filter=clear-xml Una cosa que el filter hace en el paso de clean es verificar si hay una línea vacía al final del file y si no, agrega una. La parte de […]

¿Por qué no puedo descartar los cambios locales causados ​​por un filter `git clean`?

Tengo algunos files .resx en mi repository que contienen traducciones de cadenas para mi aplicación. Esto funciona bien, a exception de los conflictos de combinación cuando se han agregado nuevas cadenas al final del file en las twigs de git separadas. KDiff3 no funciona bien con la fusión de lists de pares XML. El file […]

¿Cómo puede un filter de limpieza / borrón determinar el nombre de file de su flujo de datos?

En contraste con githooks , clean y manchar son meros filters que están destinados a procesar directamente el contenido del file sin tener en count ninguna funcionalidad de git (ya que uno puede querer usar herramientas nativas como cat o incluso gzip ). ¿Pero existen variables de entorno u otros medios (además de escanear el […]

¿Pueden los filters de gitattributes eliminar o agregar files?

Los attributes de Git se pueden usar para configurar filters por file para hacer que el contenido del directory de trabajo sea una versión transformada del contenido del repository. Me preguntaba si esto podría usarse para limpiar los files .SRCINFO que deben tratarse en la nueva versión AUR 4 de Archlinux . Básicamente, hay dos […]