Afin de pouvoir changer de branche dans Git, je devais organiser tous les fichiers modifiés. Une fois que j'ai fait cela, je pourrais changer de branche. Cependant, maintenant si je fais un git status
il ne détecte pas les changements, mais si je fais un git diff HEAD^ HEAD
ou git diff HEAD^
les changements sont affichés. Comment puis-je récupérer de cela? : S
Réponses:
2 pour la réponse № 1Non seulement vous avez mis en scène les fichiers modifiés, mais il semble que vous ayez également créé un commit. HEAD^
fait référence au commit qui est le premier parent de HEAD
, et HEAD
est le commit en cours, généralement la pointe de la branche. Alors git diff HEAD^ HEAD
affiche le diff du dernier commit. C'est similaire au patch qui est montré par git show HEAD
. git diff HEAD^
montre le diff entre votre arbre de travail et l'arbre qui correspond à HEAD^
, et cela devrait être équivalent à git diff HEAD^ HEAD
si vous n'avez apporté aucune modification à votre arbre de travail depuis le dernier commit.
Si vous voulez revenir en arrière et "annuler" votre dernier commit, vous pouvez utiliser la commande suivante:
git reset HEAD^
Cela réinitialisera la branche actuelle sur HEAD^
, sans modifier votre arbre de travail.