Comment lister les commits depuis certains commit?


144

Existe-t-il de toute façon une liste des validations d'un numéro de validation donné à HEAD?

Je sais que cela est possible à la date de validation, mais j'en ai besoin par le numéro de validation et je n'arrive pas à trouver de documentation, ou même si cela est possible.


Quelle commande Git utilisiez-vous pour lister les commits à partir d'un nom de commit donné?
Greg Hewgill

Vous voulez dire commettre le hachage, non? Vous pouvez également utiliser HEAD~10pour signifier "10 commits avant HEAD" afin que vous puissiez le faire git log HEAD~10.., si c'est ce que vous entendez par numéro de commit.
Cascabel

Réponses:


174
git rev-list <since_hash>..HEAD

ou pour inclure le commit:

git rev-list <since_hash>^..HEAD

Vous pouvez également utiliser à la git logplace de git rev-listpour obtenir des détails supplémentaires.


Cela a parfaitement fonctionné pour moi, merci! Je jure que j'avais essayé ça. Doit avoir fait une erreur.
ehftwelve du

@manojlds Je sais que cela indique les derniers HEADcommits, mais quel est le sens de^
Kasun Siyambalapitiya

2
@KasunSiyambalapitiya ^est un alias pour le premier parent. Voir «SPÉCIFICATION DES RÉVISIONS» dans kernel.org/pub/software/scm/git/docs/git-rev-parse.html - voir également le manuel git-scm.com/book/en/v2/Git-Tools-Revision -Selection - ou stackoverflow.com/questions/2221658/…
Michaelangel007

2
Je reçois une liste énorme, énorme de SHA ... même pour un commit qui n'est qu'un retour (une jambe d'une fusion). Qu'est-ce que cela me dit et en quoi est-ce utile?
ErikE

Si vous vous souciez uniquement du nombre de validations, vous pouvez spécifier l' --countoption après rev-list. ie:git rev-list --count <since_hash>..HEAD
Jon Schneider le

75
git log <hash>..

Est le moins de frappe. Omettre "HEAD" suppose que c'est ce que vous vouliez dire. Rev-list fonctionnerait aussi.


2
Celui-ci est mon préféré. J'aime le combiner avec --oneline. Au lieu de <hash>, bien sûr, vous pouvez également utiliser une référence comme un nom de branche.
codener

2
De plus , git log HEAD~#..#est le nombre de commits récents souhaités.
user3.1415927

Def la meilleure option et la plus concise!
Ricardo Rodrigues

37

Vous pouvez exécuter la commande git suivante à partir du shell:

git log --pretty=oneline commit-id...HEAD

12

En supposant que par "numéro de validation", vous entendez le hachage de validation:

git log <commit-hash>..HEAD

1

Si quelqu'un ici essaie de découvrir comment MOINS grâce à la sortie de git logdémarrage à un certain commit, en paginant en arrière, c'est aussi simple que git log <hash>.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.