Am șters un fișier cu Git și apoi sa angajat, astfel încât fișierul nu mai este în copia mea de lucru. Vreau să se uite la conținutul acelui fișier, dar nu-l restabili de fapt. Cum pot face acest lucru?
Vizualizarea unui fișier șters în Git

git show HEAD^:path/to/file
Puteți utiliza un element de identificare explicită comite sau HEAD~n
pentru a vedea versiunile mai vechi sau în cazul în care a existat mai mult de o comite , deoarece ați șters -o .
Din moment ce s-ar putea să nu amintesc calea exactă, puteți obține în schimb SHA1 din jurnalul de git, atunci poate emite pur și simplu
git cat-file -p <sha1>
În cazul în care acest lucru este un fișier pe care ați șters - o înapoi în timp și nu doresc să vâneze pentru o revizuire , puteți utiliza (fișierul este numit foo
în acest exemplu, puteți utiliza o cale completă):
git show $(git rev-list --max-count=1 --all -- foo)^:foo
rev-list
Invocarea caută toate revizuirile , foo
ci prezintă numai unul. Deoarece rev-list
liste în ordine cronologică inversă, atunci ce listeaza este ultima revizuire care a schimbat foo
, ceea ce ar fi garantează că șters foo
. (Aceasta se bazează pe presupunerea că Git nu permite un fișier șters să fie schimbat și totuși rămân șterse.) Nu puteți folosi doar revizuirea care se rev-list
întoarce ca atare , deoarece foo
nu mai există acolo. Trebuie să ceri cel chiar înainte de aceasta , care conține ultima revizuire a fișierului, prin urmare, ^
în git show
.