Gitwatch: No se detectan todos los eventos relevantes

Creado en 6 dic. 2012  ·  9Comentarios  ·  Fuente: gitwatch/gitwatch

Preguntar inotifywait sin evento create no detecta la creación del directorio y ninguno de los archivos creados dentro de él (al menos en mi sistema (que usa inotify-tools-3.13).

Además, puede agregar el evento move_self (o simplemente move para llegar a / desde) para detectar archivos movidos fuera del directorio observado. Por ejemplo, el directorio observado es /foo/ y mueve el archivo /foo/bar a /tmp/ .

help wanted

Comentario más útil

No he investigado completamente, pero los eventos utilizados también causan problemas en Windows con inotify-win. Los eventos inotify-win son: crear, modificar, eliminar, mover. Eliminar la lista de eventos del script soluciona el problema.

Con la lista de eventos especificada, no sucede nada hasta que haga algo como git status. Entonces parece ver los cambios y se ejecuta.

¿Quizás podría ser un argumento opcional?

Aparte de eso, funciona bien en Windows.

Todos 9 comentarios

Sí, los eventos que tengo en el guión los agregué porque esos son los que vi ocurrir en la situación para la que escribí el guión por primera vez. Intentaré investigar un poco más sobre qué eventos son necesarios / útiles (como los que sugirió, tal vez otros). Algunos de ellos también pueden estar habilitados con modificadores de línea de comando. Otra cosa a tener en cuenta es si alguno de los tipos de eventos se agregó recientemente (para no introducir una incompatibilidad con una versión de inotfytools un poco más antigua).

Cualquier otro evento relevante debe ser discutido en este número, dejándolo así abierto por ahora.

No he investigado completamente, pero los eventos utilizados también causan problemas en Windows con inotify-win. Los eventos inotify-win son: crear, modificar, eliminar, mover. Eliminar la lista de eventos del script soluciona el problema.

Con la lista de eventos especificada, no sucede nada hasta que haga algo como git status. Entonces parece ver los cambios y se ejecuta.

¿Quizás podría ser un argumento opcional?

Aparte de eso, funciona bien en Windows.

Agregué una solicitud de extracción para la sugerencia de arg opcional: https://github.com/nevik/gitwatch/pull/17

mfw alguien publica en este proyecto

¡Esa es una buena captura! No sabía que inotify-tools se había trasladado a Windows.

Pasar los eventos interesantes a través de un argumento es ciertamente útil.

Desafortunadamente, la opción de exclusión necesita una ruta de Windows y cuando se ejecuta desde mingw bash ${TARGETDIR} obviamente proporciona una ruta de Unix. Entonces necesito otra solución.

Sin embargo, eso podría ser una limitación de MinGW, y posiblemente sea difícil solucionarlo. No tengo experiencia con ese tipo de cosas en particular, pero si tienes cosas que probar, avísame (si empiezas a trabajar en ello, no dudes en abrir un PR para realizar un seguimiento de los cambios).

Como 429c4af5bf28d015dd3aab8964291ae4c4ec9be6 agrega un interruptor de línea de comando para permitir que el usuario especifique qué eventos monitorear, este problema está pendiente de cerrarse una vez que el compromiso se fusiona con el maestro. (Alguien me recuerda si me olvido después de fusionarme).

Sería genial si alguien pudiera ofrecerse como voluntario para probar esta solución.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

Alwaysin picture Alwaysin  ·  8Comentarios

hongkongkiwi picture hongkongkiwi  ·  3Comentarios

miguelarauj1o picture miguelarauj1o  ·  7Comentarios

lehnerpat picture lehnerpat  ·  7Comentarios

yfeldblum picture yfeldblum  ·  6Comentarios