Resumir alterações (inserções e exclusões) no Git [fechado]

47

Quero ver como minha base de código cresceu ao longo do tempo. O GitHub tem uma boa +/-exibição ao longo da lista de check-ins, o que dá uma idéia disso. Existe algo semelhante que eu possa usar com meu repo hospedado no Google Code ou offline?

Potatoswatter
fonte
1
Estou votando para encerrar esta questão como off-topic porque o uso de ferramentas específicas para o desenvolvimento de software. Essas perguntas pertencem ao estouro de pilha, mas é muito antiga para migrar.
Thomas Owens
leitura recomendada: para onde vai minha pergunta do git?
Gnat

Respostas:

71

Existem algumas opções nativamente no Git para obter dados sobre as alterações.

git log --stat mostrará a quantidade que cada arquivo foi alterado.

git whatchanged fornece alguns detalhes sobre os arquivos que foram modificados.

git diff --stat <sha1> <sha2> fornece os arquivos e a quantidade de alterações entre duas confirmações.

Existem muitos outros blogs que fornecem vários logs formatados. Uma pesquisa no google pode apontar para eles. Também o procedimento git log --helpdará as várias opções para formatar o histórico do seu repo. O Git tem a capacidade de fornecer muitos dados por meio das várias logopções de linha de comando (filtragem por autor, arquivo, etc.).

Schleis
fonte
6
Bela! Obrigado. Agora também vejo --numstatum formato alternativo menos açucarado, mas limpo.
Potatoswatter
18
--shortstatapenas imprimirá os totais.
casey
1
lembre-se de que git diff --stat <sha1> <sha2>não inclui inserções e exclusões <sha1>, portanto, você deve colocar o shacommit imediatamente antes <sha1>de incluir<sha1>
Vaibhav Vishal
18

Se você conhece os commits que gostaria de comparar, tente usar o git diffcomando com o --statargumento Dá saída assim:

$ git diff --stat HEAD^ HEAD
_layouts/default.html |    1 -
_sass/_variables.scss |    2 +-
_sass/main.scss       |   42 +++++++++++++++---------------------------
3 files changed, 16 insertions(+), 29 deletions(-)
Mike Gossmann
fonte
2
Sempre ame um exemplo que funcione na maioria dos casos (HEAD - 1) em vez de uma abstração. Obrigado Mike!
SimplGy