100 votes

Afficher un fichier supprimé dans Git

J'ai supprimé un fichier avec Git puis validé, de sorte que le fichier ne se trouve plus dans ma copie de travail. Je veux regarder le contenu de ce fichier, mais pas réellement le restaurer. Comment puis-je faire ceci?

140voto

Charles Bailey Points 244082
 git show HEAD^:path/to/file
 

Vous pouvez utiliser un identifiant de validation explicite ou HEAD~n pour afficher les versions plus anciennes ou s’il ya eu plusieurs validations depuis que vous les avez supprimées.

49voto

Louis Points 13534

Si c'est un fichier que vous avez supprimé un certain temps et ne veulent pas de chasser pour une révision, vous pouvez utiliser (le fichier est nommé foo dans cet exemple, vous pouvez utiliser un chemin d'accès complet):

git show $(git rev-list --max-count=1 --all -- foo)^:foo

L' rev-list d'invocation de recherche pour toutes les révisions d' foo mais seulement des listes. Depuis rev-list les listes dans l'ordre chronologique inverse, alors qu'il répertorie est la dernière révision qui a changé foo, ce qui serait le commit qui a supprimé foo. (Ceci est basé sur l'hypothèse que git ne permet pas un fichier supprimé à être changé et, pourtant, demeurent supprimés.) Vous ne pouvez pas simplement utiliser la révision rev-list retourne comme-est , car foo n'existe plus. Vous devez vous demander pour celle juste avant, qui contient la dernière révision du fichier, d'où l' ^ en git show.

9voto

pdeschen Points 506

Puisque vous ne vous souvenez peut-être pas du chemin exact, vous pouvez obtenir le sha1 depuis le journal git, puis vous pouvez simplement envoyer

  git cat-file -p <sha1>
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X