2013-06-03 19 views
5

Ho bisogno di essere avvisato quando un repository git è cambiato. Semplicemente usare i ganci non è abbastanza buono: so che alcune librerie come libgit2 non rispettano i ganci. Invece, ho bisogno di un modo per monitorare i file stessi per le modifiche usando inotify o qualche equivalente multipiattaforma.Come monitorare un repository git per le modifiche?

UPDATE: Idealmente una libreria specifica per git che fornisce hook quando cambia il repository git (una libreria che dovrebbe utilizzare il monitoraggio del filesystem).

risposta

-1

Il monitoraggio non è correlato a git o libgit2. Se quello che vuoi è monitorare i file, allora vuoi esattamente inotify, o qualsiasi altra cosa la tua lingua fornisca per avvolgerli.

Python ha watchdog, che afferma di funzionare anche su Windows. https://pypi.python.org/pypi/watchdog

Altre lingue avranno librerie diverse, ma senza ulteriori informazioni, non è possibile parlarne con una che funzionerà per te.

+0

Il monitoraggio non è direttamente correlato, ma quello che voglio è una libreria che monitora un repository git per le modifiche. Sarebbe come un githook, ma basato sulla verità fondamentale (i file stessi). –

+0

Quindi non sarebbe affatto come i git's hooks; quello che vuoi è il monitoraggio, con le tue parole qui, e dovresti cercare una libreria per il monitoraggio dei file per il tuo ambiente. –

+0

Giusto. Tranne _file-monitoring_ mi dirà "il repository è cambiato". Voglio _git-monitoring_, che sarebbe più specifico come "il ref HEAD si è spostato da 12812ab .. a 129baeef .." –

0

Jenkins è uno strumento di monitoraggio che è open source. Funziona per un numero di VCS. Puoi get the source e vedere come funziona.

Problemi correlati