Preciso obter o relatório de todos os commits que o autor fez. Até agora, eu tenho o script que envolve o seguinte comando:
git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr
Funciona bem. No entanto, ele relata apenas as ações para a ramificação atual. Existe alguma opção que registre as mensagens de confirmação para o autor de todas as ramificações , não apenas da atual?
Em outras palavras, o git pode fazer uma sequência classificada inversamente (por data e hora) de todos os commits no repositório e extrair as informações de log dessa sequência?
Resolvido: (copiado do comentário abaixo que está oculto de outra forma)
O problema era que eu tenho um repositório e dois clones para trabalhar simultaneamente em dois ramos. Empurrei as alterações no repositório de origem, mas esqueci de buscar as alterações no repositório clonado. Dessa maneira, parecia que --all
não funcionava ao usá-lo no repositório clonado.
git log
aceitacommittish
como primeiro argumento:git log mybranch
(e lista todas as suas ramificaçõesgit branch
).committish
? É possível obter as informações através de um comando git?--all
. Seu comando está corretogit rev-list
análise, tudogit log --all
bem.--all
, mas aparentemente não funciona assim para mim. Não entendo sua explicação de ajuda: finja que todos os árbitrosrefs/
estão listados na linha de comando como<commit>
.Respostas:
Seu comando está correto, pois você usa a
--all
opção que fornece todos os commits de todas as ramificações. Para responder à pergunta em seu comentário, ele também funciona em repositórios vazios.fonte
Em vez de
--all
você pode querer usar--branches
, pois--all
também incluirefs/tags
erefs/remotes
.fonte