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?

Como mencioné en los comentarios, una razón importante por la que Git no hace esto es porque supone un gran riesgo para la security.

La forma obvia de mitigar ese riesgo, utilizando las herramientas y la tecnología de hoy en día, es ejecutar un filter in-repo si y solo si ese filter tiene una firma digital válida (una de las firmas PGP / GPG. Es decir, su file .gitattributes leería :

 [filter "csprojarrange"] clean = helper-check-git-signature CsProjArrange 

o similar. Mientras tanto, helper-check-git-signature sería un progtwig que tendrías que instalar independientemente de Git y de cualquier repository; pero solo tendrías que instalarlo una vez, siempre. (Y tal vez su sistema operativo viene con algo adecuado, ya que esta técnica de firma digital es cómo algunos sistemas operativos de teléfonos revisan las aplicaciones, aunque tienden a hacerlo una vez durante la descarga, en lugar de en cada ejecución de filter).

El trabajo del ayudante es ubicar el file dentro del repository, verificar que está bien ejecutarlo y luego ejecutarlo. Como el helper está instalado en la parte "confiable" de su computadora (p. Ej., /usr/local/bin o $HOME/bin en Linux), simplemente se ejecuta. No necesita volver a instalarlo cuando actualice el filter dentro del repository.

La parte que no está "enlatada" aquí es cómo el ayudante hace la verificación (si tiene gpg, puede usar eso, ya que tiene todo el soporte de revocación y comprobación de firmas que necesita), donde las firmas mismas viven vs los filters en repo, cómo el ayudante localiza las diversas partes, y así sucesivamente. Piense en hacer tal cosa como una oportunidad de negocios, tal vez. 🙂