Ao usar git log
, como posso filtrar por usuário para ver apenas confirmações desse usuário?
git
version-control
git-log
markdorison
fonte
fonte
github
?Respostas:
Isso funciona para ambos
git log
egitk
- as 2 formas mais comuns de visualização de histórico.Você não precisa usar o nome inteiro:
corresponderá a um commit feito por "Jonathan Smith"
e
também funcionaria. As aspas são opcionais se você não precisar de espaços.
Adicione
--all
se você deseja pesquisar todos os ramos e não apenas os ancestrais do commit atual em seu repositório.Você também pode corresponder facilmente a vários autores, pois a expressão regular é o mecanismo subjacente a esse filtro. Então, para listar confirmações de Jonathan ou Adam, você pode fazer o seguinte:
Para excluir confirmações de um determinado autor ou conjunto de autores usando expressões regulares, conforme observado nesta pergunta , você pode usar um lookahead negativo em combinação com a
--perl-regexp
opção:Como alternativa, você pode excluir confirmações criadas por Adam usando
bash
e canalizando:Se você deseja excluir confirmações confirmadas (mas não necessariamente criadas) por Adam, substitua
%an
por%cn
. Mais detalhes sobre isso estão no meu blog aqui: http://dymitruk.com/blog/2012/07/18/filtering-by-author-name/fonte
gitk
deixar de fora os pais cometem com outros autores? (Eles são mostrados com círculos brancos.) Por outro lado,git log --graph
não mostra o pai confirma; mostra apenas os commits do autor fornecido. Eu adoraria ver a mesma saída emgitk
. (Já verifiquei Preferências e Edit View - não poderia encontrar qualquer coisa útil.)fonte
No github, há também uma maneira secreta ...
Você pode filtrar confirmações por autor na visualização de confirmação anexando param
?author=github_handle
. Por exemplo, o link https://github.com/dynjs/dynjs/commits/master?author=jingweno mostra uma lista de confirmações para o projeto Dynjsfonte
fornece a página de manual do git log. Procure por "autor" pressionando / e, em seguida, digitando "autor", seguido de Enter. Digite "n" algumas vezes para chegar à seção relevante, que revela:
como já sugerido.
Observe que isso fornecerá o autor do commit, mas no Git, o autor pode ser alguém diferente do commit (por exemplo, no kernel do Linux, se você enviar um patch como um usuário comum, ele poderá ser confirmado por outro usuário administrativo .) Veja Diferença entre autor e committer no Git? para mais detalhes)
Na maioria das vezes, o que se refere como o usuário é tanto o autor quanto o autor.
fonte
Para obter mais detalhes - (Aqui
%an
se refere ao autor)Usa isto :-
fonte
%ae
em vez de%an
(que deu nome.)--author
na verdade, procura pelo nome do autor e não pelo nome do autor. Eu mudaria"username"
para autor #Isso fornece seus commits em formato de texto.
fonte
cat |
?Se você deseja filtrar seus próprios commits:
fonte
Você pode até abreviar um pouco usando simplesmente parte do nome do usuário:
fonte
tente esta ferramenta https://github.com/kamranahmedse/git-standup
Uso
Abaixo está a descrição para cada uma das bandeiras
fonte
Como a outra pergunta foi (possivelmente por engano?) Bloqueada, vou colocar isso aqui:
mostre os autores com suas contagens de confirmação:
encontre todas as confirmações para USERNAME específico:
fonte
Mostre o número n de logs para x usuário em cores, adicionando este pequeno trecho ao seu arquivo .bashrc.
Para mostrar os últimos 10 confirmados por Frank:
l 10 frank
Para mostrar os últimos 20 commits por qualquer pessoa:
l 20
fonte
Se você estiver usando o GitHub:
mostrará a lista no formato abaixo
fonte
Você pode usar = ou "espaço". Por exemplo, após dois comandos retornam o mesmo
fonte
Meu caso: estou usando a árvore de origem, segui as seguintes etapas:
CRL+3
fonte
Embora existam muitas respostas úteis. Considerando que, apenas para adicionar outra maneira a ele. Você também pode usar
Ele mostrará a saída da maneira agrupada:
Aqui, o total de 5 confirmações é feito
<Author Name>
sob a ramificação atual. Visto que você também pode usar--all
para impor a pesquisa em todos os lugares (todos os ramos) no repositório git.Um problema: o git tenta internamente combinar uma entrada
<author name>
com o nome e o email do autor no banco de dados git. Faz distinção entre maiúsculas e minúsculas .fonte