Het bekijken van een verwijderd bestand in Git

stemmen
98

Ik heb een bestand verwijderd met Git en dan begaan, zodat het bestand niet meer in mijn werk kopie. Ik wil kijken naar de inhoud van dat bestand, maar niet echt herstellen. Hoe kan ik dit doen?

De vraag is gesteld op 08/09/2009 om 17:11
user
In andere talen...                            


3 antwoorden

stemmen
112

git show HEAD^:path/to/file

U kunt een expliciet gebruiken plegen identifier of HEAD~noudere versies te zien of er meer dan één te plegen omdat je verwijderd is geweest.

antwoordde op 08/09/2009 om 17:15
bron van user

stemmen
6

Aangezien u het exacte pad niet kan herinneren, kunt u in plaats daarvan krijgen de SHA1 van git log dan kun je gewoon uitgeven

 git cat-file -p <sha1>
antwoordde op 02/05/2012 om 00:55
bron van user

stemmen
34

Als dit is een bestand dat u hebt verwijderd een tijdje terug en wil niet op jacht naar een herziening , die u kunt gebruiken (het bestand heet fooin dit voorbeeld, je kunt een volledig pad te gebruiken):

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

De rev-listaanroeping zoekt naar alle herzieningen van foo, maar geeft slechts één. Sinds rev-listlijsten in omgekeerde chronologische volgorde, wat maakt een lijst is de laatste herziening dat veranderde foo, die zou worden de commit die verwijderd foo. (Dit is gebaseerd op de veronderstelling dat git niet toe dat een verwijderd bestand te veranderen en toch blijven gewist.) Je kunt niet zomaar gebruik maken van de herziening die rev-listterugkeert as-is , omdat fooer niet meer bestaat. Je hebt te vragen voor de ene net voordat het die de laatste herziening van het bestand, vandaar de bevat ^in git show.

antwoordde op 01/11/2013 om 11:31
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more