Résumer les modifications (insertions et suppressions) dans Git [fermé]

47

Je veux regarder comment ma base de code a grandi avec le temps. GitHub a un bel +/-affichage le long de la liste des checkins ce qui donne une idée de cela. Puis-je utiliser quelque chose de similaire avec mon référentiel hébergé sur Google Code ou hors connexion?

Potatoswatter
la source
1
Je vote pour fermer cette question en tant que sujet hors sujet en raison de l'utilisation d'outils spécifiques au développement de logiciels. Ces questions appartiennent à Stack Overflow, mais cette question est trop ancienne pour migrer.
Thomas Owens
lecture recommandée: Où va ma question git?
mord le

Réponses:

71

Il existe quelques options natives dans Git pour obtenir des données sur les modifications.

git log --stat montrera le montant de chaque fichier a été modifié.

git whatchanged donne quelques détails dans les fichiers qui ont été modifiés.

git diff --stat <sha1> <sha2> donne les fichiers et la quantité de changements entre deux commits.

Il existe de nombreux autres blogs qui donnent divers journaux formatés. Une recherche sur Google peut vous indiquer ces informations. Cela git log --helpdonnera également les différentes options pour formater l’historique de votre rapport. Git a la capacité de vous fournir pas mal de données à travers les différentes logoptions de la ligne de commande (filtrage par auteur, fichier, etc.).

Schleis
la source
6
Magnifique! Merci. Maintenant, je vois aussi --numstatun format alternatif moins sucré mais plus propre.
Potatoswatter
18
--shortstatva simplement imprimer les totaux.
casey
1
Gardez à l'esprit que git diff --stat <sha1> <sha2>n'inclut ni les insertions ni les suppressions <sha1>, vous devrez donc mettre le shacommit juste avant <sha1>d'inclure<sha1>
Vaibhav Vishal
18

Si vous connaissez les commits que vous souhaitez comparer, vous pouvez essayer d'utiliser la git diffcommande avec l' --statargument. Il donne une sortie comme ceci:

$ 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
la source
2
Aimez toujours un exemple qui fonctionne dans la plupart des cas (HEAD - 1) au lieu d’une abstraction. Merci Mike!
SimplGy