Jeg har slettet en fil med Git og deretter begått, slik at filen er ikke lenger i min arbeidskopi. Jeg ønsker å se på innholdet i denne filen, men faktisk ikke gjenopprette den. Hvordan kan jeg gjøre dette?
Ser en slettet fil i Git

git show HEAD^:path/to/file
Du kan bruke en eksplisitt forplikte identifikator eller HEAD~n
å se eldre versjoner, eller om det har vært mer enn én forplikte siden du slettet den.
Siden du kanskje ikke husker den nøyaktige banen, kan du i stedet få SHA1 fra git loggen så kan du bare utstede
git cat-file -p <sha1>
Hvis dette er en fil du har slettet en stund tilbake, og ønsker ikke å jakte på en revisjon , kan du bruke (filen heter foo
i dette eksempelet, du kan bruke en full bane):
git show $(git rev-list --max-count=1 --all -- foo)^:foo
Den rev-list
påkalling ser for alle revisjoner av foo
, men bare viser én. Siden rev-list
lister i omvendt kronologisk rekkefølge, så hva det viser er den siste revisjonen som endret foo
, noe som ville være begå som slettet foo
. (Dette er basert på antagelsen om at git ikke tillater en slettet fil som skal endres og likevel forbli slettet.) Du kan ikke bare bruke den revisjonen som rev-list
returnerer som det er fordi foo
ikke lenger eksisterer der. Du må be om en like før det som inneholder siste versjon av filen, derav ^
i git show
.