Lorsque la tête est à un commit particulier, je veux obtenir un fichier diff afin de pouvoir réduire la tête à un niveau de plus, puis essayer la fonctionnalité de test avec et sans appliquer le fichier diff. Il existe donc un moyen de générer un fichier diff d'un commit spécifique.
Même s'il existe un moyen de changer la tête avant et après la validation, cette méthode est plus pratique.
Voir les modifications d'un commit spécifique.
$ git diff <commit-sha> -p
OR,
$ git show --decorate <commit-sha> # see 'Author', 'Date' and 'diff'
Voir la différence de deux commits.
$ git diff <commit1> <commit2>
Voir les modifications file
pour un commit spécifique.
$ git show <commit>:<file>
Voir toutes les modifications pour une durée (disons, 1 day
).
$ git whatchanged --since="1 day ago" -p
$ git whatchanged --since="1 day ago" -p <file> # see changes for a specific file only
Si je vous comprends bien, vous voulez obtenir un diff pour un fichier avec un niveau en dessous de HEAD
pour vérifier la différence de fichier par rapport à HEAD à un niveau avant
git diff HEAD^1 filename
le numéro 1 correspond au niveau que vous souhaitez comparer,
vous pouvez obtenir un diff en utilisant SHA également, pour voir tous les commits avec leur SHA use
git log --oneline
puis vous pouvez utiliser le SHA pour obtenir un diff pour comparer le courant HEAD avec une utilisation de validation spécifique
git diff commitSHA filename
si vous voulez obtenir toutes les différences entre deux commit, vous pouvez utiliser
git diff commitSHA1..commitSHA2 filename