Ar galima peržiūrėti „firmware“ turinį „git“?

Dažnai atmetu darbą vėliau, tada ateina dar vienas dalykas, o po kelių savaičių noriu patikrinti talpyklą ir sužinoti, kokius pakeitimus jis atliks, jei jį pritaikysiu prie dabartinio darbo medžio.

Aš žinau, kad galiu atlikti git dif stash'ą, bet tai rodo man visus skirtumus tarp darbo medžio ir atsišakojimo, o aš tik noriu žinoti, kokia paraiška bus taikoma.

Kaip tai padaryti?

333
26 авг. nustatė Benjol 26 rug . 2010-08-26 12:08 '10, 12:08, 2010-08-26 12:08
@ 10 atsakymų

git stash show “ parodys failus, kurie buvo pakeisti naujausioje versijoje. Galite pridėti -p parinktį, kad parodytumėte skirtumą.

 git stash show -p 

Jei jūsų susidomėjote pinigine nėra naujausia, prie komandos pabaigos pridėkite „Piniginės“ pavadinimą:

 git stash show -p stash@{2} 
447
27 авг. Jlew atsakė 27 rugpjūčio mėn. 2010-08-27 00:01 '10 - 0:01 2010-08-27 00:01

Norėdami peržiūrėti dabartinį pranešimų sąrašą, naudokite

 git stash list 

Pavyzdžiui, turėtumėte matyti sąrašą

 stash@{0}: WIP on ... stash@{1}: ... stash@{2}: ... ... 

Jei norite peržiūrėti skirtumus bet kuriame iš šių antspaudų, naudokite komandą git stash show -p stash@{n}

60
11 июня '13 в 22:50 2013-06-11 22:50 atsakymą pateikė segfault birželio 13 d. 13 val. 10:50 2013-06-14 22:50

Aš esu „ gitk GUI“ gerbėjas, gitk vizualizuoti „git“ saugyklas. Paskutinį elementą galite peržiūrėti:

 gitk stash 

Taip pat galite peržiūrėti bet kokius paslėptus pakeitimus (kaip nurodyta git stash list ). Pavyzdžiui:

 gitk stash@{2} 

Žemiau esančioje ekrano kopijoje viršutiniame kairiajame kampe galite matyti atsišakojimą, kai ir iš kur jis atsirado pataisymo istorijoje, apatiniame dešiniajame kampe pakeistų failų sąrašas ir linijinis plitimas apatiniame kairiajame kampe. Visi, kol talpykla vis dar paslėpta.

2019

22
27 мая '14 в 18:28 2014-05-27 18:28 Atsakymą davė Jeffas Wardas gegužės 27 d. 14, 18:28 2014-05-27 18:28

git stash apply tik atsišakojimas su git stash apply ? Tai nepašalina atminties, todėl galite atstatyti medį darbui neprarandant paslėptų darbų, jei nemėgstate pakeitimų. Ir jei jums patinka, galite tiesiog pašalinti git stash drop su git stash drop .

14
26 авг. atsakymas duotas lunaryorn 26 rug. 2010-08-26 12:21 '10, 12:21, 2010-08-26 12:21

Jei norite peržiūrėti visus tuščio brūkšnio pakeitimus:

 git stash show -p stash@{0} 

Jei norite peržiūrėti konkretaus failo pakeitimus nepatvirtintu brūkšniu:

 git diff HEAD stash@{0} -- path/to/filename.php 
12
29 окт. atsakymą pateikė Wesley Musgrove spalio 29 d. 2015-10-29 18:17 '15, 18:17 2015-10-29 18:17

Be gitk rekomendacijos, ar galima peržiūrėti turinio peržiūrą git? , galite nustatyti tig ir paskambinti tig stash . Ši nemokama / atvira konsolės programa taip pat leidžia jums pasirinkti, kurį smūgį palyginti.

5
03 сент. Atsakymas pateiktas Bruce 03 rugsėjis. 2015-09-03 21:46 '15 - 21:46 2015-09-03 21:46

Visų spaudų sąrašą galite peržiūrėti naudodami šią komandą:

 $ git stash list stash@{0}: WIP on dev: ddd4d75 spelling fix stash@{1}: WIP on dev: 40e65a8 setting width for messages ...... ...... ...... stash@{12}: WIP on dev: 264fdab added token based auth 

Naujausias antspaudas yra pirmasis.

Galite paprasčiausiai pasirinkti n rodyklę, nurodytą aukščiau pateiktame sąraše, ir naudoti šią komandą, kad peržiūrėtumėte paslėptus duomenis

 git stash show -p stash@{3} 

Panašiai

 git stash show -p stash@{n} 

Taip pat galite patikrinti „diff“ su komanda:

 git diff HEAD stash@{n} -- /path/to/file 
3
08 марта '17 в 15:22 2017-03-08 15:22 atsakymą pateikė Vishvajit Pathak kovo 8–17 d. 15:22 2017-03-08 15:22

Aš naudoju tai, kad pamatytumėte visus savo apšviestus spalvotus antspaudus („Fedora 21“):

 git stash list | awk -F: '{ print "\n\n\n\n"; print $0; print "\n\n"; system("git -c color.ui=always stash show -p " $1); }' | less -R 

(Pritaikyta iš „ Git“: žiūrėkite, kas yra brūkšnelyje, nenaudojant piniginės )

2
30 апр. atsakymas pateikiamas seanf 30 d. 2015-04-30 05:40 '15, 5:40 2015-04-30 05:40

Pirmiausia galime naudoti git stash sąrašą, kad galėtume gauti visus stash elementus:

 $git stash list stash@{0}: WIP on ... stash@{1}: WIP on .... stash@{2}: WIP on ... 

Tada mes galime naudoti git stash show stash@{N} kad patikrintume failus pagal tam tikro tipo N Jei ją vykdysime, mes gauname:

 $ git stash show stash@{2} fatal: ambiguous argument 'stash@2': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]' 

To priežastis gali būti tai, kad apvalkalas valgo petnešos, o gitas mato stash@2 , o ne stash@{2} . Ir norėdami išspręsti šią problemą, turime naudoti vienintelius kablelius:

 git stash show stash@'{2'} com/java/myproject/my-xml-impl.xml | 16 ++++++++-------- com/java/myproject/MyJavaClass.java | 16 ++++++++-------- etc. 
1
04 июля '16 в 5:35 2016-07-04 05:35 atsakymas pateikiamas i_am_zero liepos 4 d., 16 d., 5:35 2016-07-04 05:35

Rodyti visus antspaudus

Tik failų pavadinimai:

 for i in $(git stash list --format="%gd") ; do echo "======$i======"; git stash show -p $i; done 

Gausite spalvų diferencialą, kurį galite įterpti naudodami tarpą (pirmyn) ir b (atgal) ir q, kad uždarytumėte dabartinės talpyklos laikiklį. Jei norite, kad jis būtų faile, į komandą pridėkite > stashes.diff .

0
21 нояб. cppizza atsakymas 2017-11-21 18:40 '17, 18:40 pm 2017-11-21 18:40

Peržiūrėkite kitus klausimus apie „ žymes arba užduokite klausimą