2009-07-21 6 views
183

Une façon stupide que je sais est:Comment montrer ce qu'un commit a fait?

git diff commit-number1 commit-number2 

une meilleure façon? Je veux dire que je veux savoir le commit1 lui-même, je ne veux pas ajouter le commit2 avant comme paramètre.

+10

Alors que "git show " est la bonne solution, vous pouvez utiliser "git diff ^!" obtenir diff entre commit et son (premier) parent. Voir man git-rev-parse (1) pour plus de détails. –

Répondre

5

C'est un moyen que je connais. Avec git, il semble toujours y avoir plus d'une façon de le faire.

git log -p commit1 commit2 
51

Est-ce que

$ git log -p 

faire ce que vous avez besoin?

Consultez le chapter on Git Log dans le Git Community Book pour plus d'exemples. (Ou regardez la the documentation.)

Mise à jour: Comme d'autres (Jakub et Bombe) déjà fait remarquer: bien que les travaux ci-dessus, git show est en fait la commande qui est destinée à faire exactement ce qui a été demandé.

26

TL; DR

git show <commit>


Afficher

Pour show ce fait avec un allouent statistiques:

git show <commit> --stat 

Connexion

Pour afficher commettre log avec des différences introduites pour chaque engagent dans une gamme:

git log -p <commit1> <commit2> 

Qu'est-ce que <commit>?

Chaque validation a un identifiant unique que nous appelons ici <commit>. L'identifiant unique est un hachage SHA-1 - une somme de contrôle du contenu que vous stockez plus un en-tête. #TMI

Si vous ne connaissez pas votre <commit>:

  1. git log à view the commit history

  2. Trouver le vous engage souciez.

+4

Merci - pour 'git show --stat' –

8

Je trouve que « git show --stat » est le meilleur de tous ici, vous donne un bref résumé de la validation, quels sont les fichiers que vous ajoutez et de modifier sans vous donner tas de choses, surtout si vous avez changé beaucoup de fichiers.

Questions connexes