Prohlížení odstraněného souboru v Git

hlasů
98

Jsem vypouští soubor s Git a pak spáchal, takže soubor již není v mé pracovní kopii. Chci se podívat na obsah tohoto souboru, ale ne ve skutečnosti obnovit. Jak to mohu udělat?

Položena 08/09/2009 v 17:11
uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
112

git show HEAD^:path/to/file

Můžete použít automatické potvrzení identifikátor nebo HEAD~nvidět starší verze, nebo došlo-li více než jeden dopustit, protože jste ji smazali.

Odpovězeno 08/09/2009 v 17:15
zdroj uživatelem

hlasů
6

Vzhledem k tomu, můžete si vzpomenout, kde přesně cestu, můžete místo toho získat sha1 z protokolu git pak můžete jednoduše vystavit

 git cat-file -p <sha1>
Odpovězeno 02/05/2012 v 00:55
zdroj uživatelem

hlasů
34

Pokud se jedná o soubor, které jste smazali před nějakou dobou a nechtějí shánět revizi , můžete použít (je soubor s názvem foov tomto příkladu, můžete použít celou cestu):

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

rev-listVyvolání vyhledá všechny revize foo, ale uvádí pouze jeden. Vzhledem k tomu, rev-listseznamech v obráceném chronologickém pořadí, pak to, co uvádí jako poslední revize, která změnila foo, což by bylo zavázat, že vypouští foo. (To je založeno na předpokladu, že git neumožňuje smazaný soubor, který chcete změnit, a přesto i nadále vypouští.) Nemůžete stačí použít revizi, která rev-listvrátí tak, jak je , protože footam již neexistuje. Musíte se zeptat na jednu těsně před ní, která obsahuje poslední revizi souboru, proto je ^in git show.

Odpovězeno 01/11/2013 v 11:31
zdroj uživatelem

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