Como gerar histórico de log contendo uma determinada palavra-chave?


2

Para fins de documentação, desejo obter um histórico de log SVN de confirmações que tenham uma mensagem contendo uma determinada palavra-chave.

Quando o faço manualmente, abro o Tortoise SVN, pesquise uma palavra-chave como [REVIEW], use Ctrl + A para destacar todos os resultados da pesquisa e copie-a para a área de transferência. Ao colar isso em um bloco de notas ou no Word, tenho uma boa visão geral de todos os commits, seu autor, data, mensagem e quais arquivos foram adicionados, removidos ou modificados.

Gostaria de encontrar todas as mensagens que contenham a palavra-chave [REVIEW].

Infelizmente, nenhum destes trabalhos:

svn log --search "[REVIEW]" -v

svn log --search "REVIEW" -v

svn log --search ?REVIEW? -v

O segundo exemplo mostra quase todos os commit já feitos no repositório ...

Alguém como procurar [REVIEW]nas mensagens de um log SVN usando a linha de comando do Windows?



Este foi um dos links que procurei nas últimas horas. No entanto, a solução era muito mais simples. O problema foi o uso de [e] na mensagem de log.
— Exa

Então você tem uma solução? Nesse caso, você deve postar uma resposta para sua própria pergunta. Por favor, leia Posso responder minha própria pergunta?
— DavidPostill

Eu estou familiarizado com a rede SE e já estava escrevendo minha resposta;)
— Exa

Respostas:


2

A solução foi bastante simples.

Essa combinação fez o truque:

svn log --search "?REVIEW?" -v

O uso de [e ]na mensagem de log SVN fez com que meus padrões de pesquisa falhassem ou resultassem em muitas entradas encontradas.

Como --searchsuporta caracteres curinga do tipo regex, [review] retornou todos os commits contendo r, e, v, i ou w.
Curinga ?pode ser usado para procurar uma ocorrência de qualquer caractere.

No entanto, não sei por que "?REVIEW?"funcionou ?REVIEW?.


11
Provavelmente o? foi interpretado pelo seu shell quando você não o citou. Semelhante aos problemas causados ​​ao tentar definir propriedades *sem citá-las.
— Ben
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.