Gitwatch: Nem todos os eventos relevantes são detectados

Criado em 6 dez. 2012  ·  9Comentários  ·  Fonte: gitwatch/gitwatch

Perguntar inotifywait sem evento create não detecta a criação de diretório e nenhum dos arquivos criados dentro dele (pelo menos em meu sistema (que usa inotify-tools-3.13).

Além disso, você pode adicionar o evento move_self (ou apenas move para ir de / para) para detectar arquivos movidos para fora do diretório monitorado. Por exemplo, o diretório monitorado é /foo/ e você move o arquivo /foo/bar para /tmp/ .

help wanted

Comentários muito úteis

Não investiguei totalmente, mas os eventos usados ​​também causam problemas no Windows com o inotify-win. Os eventos inotify-win são: criar, modificar, excluir, mover. Remover a lista de eventos do script corrige o problema.

Com a lista de eventos especificada, nada acontece até que você faça algo como git status. Em seguida, parece ver as mudanças e execuções.

Talvez pudesse ser um argumento opcional?

Fora isso, está funcionando bem no Windows.

Todos 9 comentários

Sim, os eventos que tenho no script adicionei porque são aqueles que vi ocorrendo na situação para a qual escrevi o script pela primeira vez. Vou tentar investigar um pouco mais sobre quais eventos são necessários / úteis (como os que você sugeriu, talvez outros). Alguns deles também podem ser ativados com opções de linha de comando. Outra coisa a verificar é se algum dos tipos de evento foi adicionado recentemente (para não introduzir uma incompatibilidade com uma versão um pouco mais antiga do inotfytools).

Quaisquer outros eventos relevantes devem ser discutidos nesta edição, deixando-o em aberto por enquanto.

Não investiguei totalmente, mas os eventos usados ​​também causam problemas no Windows com o inotify-win. Os eventos inotify-win são: criar, modificar, excluir, mover. Remover a lista de eventos do script corrige o problema.

Com a lista de eventos especificada, nada acontece até que você faça algo como git status. Em seguida, parece ver as mudanças e execuções.

Talvez pudesse ser um argumento opcional?

Fora isso, está funcionando bem no Windows.

Eu adicionei uma solicitação pull para a sugestão opcional de arg: https://github.com/nevik/gitwatch/pull/17

mfw alguém posta neste projeto

Essa é uma boa pegada! Eu não sabia que o inotify-tools tinha sido portado para o Windows.

Transmitir os eventos interessantes por meio de um argumento certamente é útil.

Infelizmente, a opção excludes precisa de um caminho do Windows e ao executar a partir do mingw bash ${TARGETDIR} obviamente fornece um caminho Unix. Portanto, preciso de outra solução alternativa.

Hm, isso pode ser uma limitação do MinGW, e possivelmente difícil de contornar. Não tenho experiência com esse tipo de coisa em particular, mas se você tiver coisas para testar, me avise (se você começar a trabalhar nisso, sinta-se à vontade para abrir um PR para rastrear as mudanças).

Como 429c4af5bf28d015dd3aab8964291ae4c4ec9be6 adiciona uma opção de linha de comando para permitir que o usuário especifique quais eventos monitorar, esse problema está pendente para ser fechado assim que o commit for mesclado no master. (Alguém me lembre se eu esquecer após a fusão.)

Seria ótimo se alguém pudesse se voluntariar para testar essa correção.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

Alwaysin picture Alwaysin  ·  8Comentários

lehnerpat picture lehnerpat  ·  7Comentários

hongkongkiwi picture hongkongkiwi  ·  3Comentários

miguelarauj1o picture miguelarauj1o  ·  7Comentários

BRFNGRNBWS picture BRFNGRNBWS  ·  3Comentários