Git preengancha ganchos solo para una subcarpeta específica?

Actualmente tengo un repository único con dos proyectos, cada uno en su propia subcarpeta: uno en C # y otro en Javascript. Quiero tener un enlace de precompromiso que ejecute jshint pero solo si alguno de los files en etapas está en la carpeta Javascript. Si los files en etapas son solo de la carpeta C #, entonces el enganche de precompilation no se ejecutará.

¿Es eso posible? ¿O es mi única solución dividir los dos proyectos en sus propios repositorys?

Los ganchos Git son scripts que Git ejecuta antes o después de hacer cosas específicas.

Si escribe un script y lo guarda como <repository_name>/.git/hooks/pre-commit entonces git lo ejecutará antes de <repository_name>/.git/hooks/pre-commit . Así que escriba una secuencia de commands simple para el sistema operativo que está utilizando que ejecute jshint en esa subcarpeta y guárdela en esa ruta.

Git no ejecuta tu gancho pre-commit con ningún argumento. Puede usar los commands de git para averiguar el estado de su repository (los cambios agregados como parte de la confirmación aún están en etapas y son accesibles a través de -cached). Si realiza cambios y desea que formen parte de la confirmación, deberá agregarlos antes de que finalice la secuencia de commands.

Estás trabajando con C # por lo que debes tener en count que los ganchos de git en Windows son un poco estrafalarios: Ejecutar ganchos de Git en Windows