EnglezăFrancezăSpaniolă

Favicon OnWorks

git-stash - Online în cloud

Rulați git-stash în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este comanda git-stash care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


git-stash - Ascundeți modificările într-un director de lucru murdar

REZUMAT


merge ascunde lista [ ]
merge ascunde spectacol [ ]
merge ascunde drop [-q|--liniștit] [ ]
merge ascunde ( pop | aplica ) [--index] [-q|--quiet] [ ]
merge ascunde ramură [ ]
merge ascunde [salvați [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]
[-u|--include-untracked] [-a|--all] [ ]]
merge ascunde clar
merge ascunde crea [ ]
merge ascunde stoca [-m|--mesaj ] [-q|--liniștit]

DESCRIERE


Utilizați git stash când doriți să înregistrați starea curentă a directorului de lucru și a
index, dar doriți să reveniți la un director de lucru curat. Comanda salvează localul
modificările eliminate și revine directorul de lucru pentru a se potrivi cu comiterea HEAD.

Modificările ascunse de această comandă pot fi listate cu git stash list,
inspectat cu git stash show și restaurat (potențial pe lângă un alt commit)
cu git stash se aplică. Apelarea git stash fără niciun argument este echivalent cu git stash
Salvați. O rezervă este listată implicit ca „WIP activat nume de ramură ...”, dar poți da mai mult
mesaj descriptiv pe linia de comandă atunci când creați unul.

Cel mai recent stash pe care l-ați creat este stocat în refs/stash; stash-uri mai vechi se găsesc în
reflog a acestei referințe și poate fi denumit folosind sintaxa obișnuită reflog (de ex. stash@{0} este
cel mai recent stoc creat, stash@{1} este cel dinaintea lui, stash@{2.hours.ago} este
de asemenea posibil).

OPŢIUNI


salvați [-p|--patch] [-k|--[no-]keep-index] [-u|--include-untracked] [-a|--all] [-q|--quiet]
[ ]
Salvați modificările locale într-o nouă ascunde, și rulați git reset --hard to revers them.
The partea este opțională și oferă descrierea împreună cu starea ascunsă.
Pentru a realiza rapid un instantaneu, puteți omite atât „salvare” și , dar doar dăruind
nu declanșează această acțiune pentru a preveni efectuarea unei subcomenzi scrise greșit
un depozit nedorit.

Dacă se folosește opțiunea --keep-index, toate modificările deja adăugate la index sunt lăsate
intact.

Dacă se utilizează opțiunea --include-untracked, toate fișierele neurmărite sunt, de asemenea, ascunse și
apoi curățat cu git clean, lăsând directorul de lucru într-o stare foarte curată.
Dacă se folosește opțiunea --all, atunci fișierele ignorate sunt ascunse și curățate
în plus față de fișierele neurmărite.

Cu --patch, puteți selecta interactiv bucăți din diferența dintre HEAD și
arborele de lucru pentru a fi ascuns. Intrarea stash este construită astfel încât starea sa de index
este aceeași cu starea de index a depozitului dvs., iar arborele de lucru conține numai
modificările pe care le-ați selectat interactiv. Modificările selectate sunt apoi anulate
arborele tău de lucru. Consultați secțiunea „Mod interactiv” din git-add(1) pentru a învăța cum să
operați modul --patch.

Opțiunea --patch implică --keep-index. Puteți folosi --no-keep-index pentru a înlocui acest lucru.

lista [ ]
Enumerați depozitele pe care le aveți în prezent. Fiecare ascunde este listat cu numele său (de ex
stash@{0} este cel mai recent stash, stash@{1} este cel de dinainte etc.), numele
ramură care era curentă când a fost făcută stash și o scurtă descriere a comiterii
stash-ul se baza pe.

stash@{0}: WIP la trimitere: 6ebd0e2... Actualizați documentația git-stash
stash@{1}: pe master: 9cc0589... Adăugați git-stash

Comanda preia opțiuni aplicabile pentru merge log comanda pentru a controla ceea ce este afișat
si cum. Vedea git-log(1).

spectacol [ ]
Afișați modificările înregistrate în stash ca o diferență între starea ascunsă și ea
părinte original. Când nu este dat, arată cel mai recent. În mod implicit,
comanda arată diffstat, dar va accepta orice format cunoscut merge dif (de exemplu, git
stash show -p stash@{1} pentru a vedea a doua cea mai recentă stash sub formă de patch). Poti
utilizați variabilele de configurare stash.showStat și/sau stash.showPatch pentru a schimba valoarea implicită
comportament.

pop [--index] [-q|--liniștit] [ ]
Eliminați o singură stare ascunsă din lista de stocare și aplicați-o peste cea curentă
starea arborelui de lucru, adică efectuați operația inversă a git stash save. Lucrul
directorul trebuie să se potrivească cu indexul.

Aplicarea statului poate eșua cu conflicte; în acest caz, nu este eliminat din
listă de depozitare. Trebuie să rezolvați conflictele manual și să apelați manual git stash drop
după aceea.

Dacă se folosește opțiunea --index, atunci încearcă să restabilească nu numai arborele de lucru
modificări, dar și cele ale indexului. Cu toate acestea, acest lucru poate eșua, atunci când aveți conflicte
(care sunt stocate în index, unde, prin urmare, nu mai puteți aplica modificările ca
au fost inițial).

Când nu este dat, se presupune stash@{0}, în caz contrar trebuie să fie o referință
de forma stash@{ }.

aplica [--index] [-q|--quiet] [ ]
Ca pop, dar nu eliminați starea din lista de depozitare. Spre deosebire de pop, poate
orice commit care arată ca un commit creat de stash save sau stash create.

ramură [ ]
Creează și verifică o nouă sucursală numită pornind de la commit la
care a fost creat inițial, aplică modificările înregistrate în la
noul arbore de lucru și index. Dacă asta reușește, și este o referință a
formular stash@{ }, apoi renunță la . Când nu este dat, se aplică
cel mai recent.

Acest lucru este util dacă ramura pe care ați rulat git stash save s-a schimbat suficient
Aplicarea git stash eșuează din cauza conflictelor. Deoarece stash-ul este aplicat deasupra
commit care era HEAD în momentul în care a fost rulat git stash, restaurează cel ascuns inițial
stat fără conflicte.

clar
Eliminați toate stările ascunse. Rețineți că acele state vor fi apoi supuse tăierii,
și poate fi imposibil de recuperat (vezi Exemple mai jos pentru o posibilă strategie).

drop [-q|--liniștit] [ ]
Eliminați o singură stare ascunsă din lista de stocare. Când nu este dat, ea
îl elimină pe cel mai recent. adică stash@{0}, în caz contrar trebuie să fie un jurnal de stocare valid
referință la formularul stash@{ }.

crea
Creați un depozit (care este un obiect de comitere obișnuit) și returnați numele obiectului său, fără
stocându-l oriunde în spațiul de nume ref. Acest lucru este menit să fie util pentru scripturi.
Probabil că nu este comanda pe care doriți să o utilizați; vezi „salvare” mai sus.

stoca
Stocați o anumită rezervă creată prin merge ascunde crea (care este o comitere de fuziune suspendată) în
reflogul stash, actualizând reflogul stash. Acest lucru este menit să fie util pentru scripturi.
Probabil că nu este comanda pe care doriți să o utilizați; vezi „salvare” mai sus.

DISCUŢIE


Un stash este reprezentat ca un commit al cărui arbore înregistrează starea directorului de lucru,
iar primul său părinte este commit-ul de la HEAD când a fost creat stash-ul. Arborele lui
al doilea părinte înregistrează starea indexului atunci când se realizează stocarea și se face a
copil al ȘEFULUI comite. Graficul strămoșilor arată astfel:

.----W
/ /
-----SALUT

unde H este comiterea HEAD, I este un commit care înregistrează starea indexului și W este un
commit care înregistrează starea arborelui de lucru.

EXEMPLE


Trag într-un copac murdar
Când ești în mijlocul a ceva, înveți că există schimbări în amonte
care sunt posibil relevante pentru ceea ce faci. Când modificările dvs. locale nu
conflict cu modificările din amonte, o simplă tragere git vă va permite să vă mutați
redirecţiona.

Cu toate acestea, există cazuri în care modificările locale sunt în conflict cu cele din amonte
modificări, iar git pull refuză să vă suprascrie modificările. Într-un astfel de caz, puteți ascunde
modificările dvs. îndepărtați, efectuați o tragere și apoi dezinstalați, astfel:

$ git pull
...
fișierul foobar nu este actualizat, nu poate fuziona.
$ git stash
$ git pull
$ git stash pop

Flux de lucru întrerupt
Când ești în mijlocul unui lucru, șeful tău vine și îți cere să rezolvi
ceva imediat. În mod tradițional, ați face un angajament într-o sucursală temporară
păstrați modificările și reveniți la sucursala inițială pentru a face remedierea de urgență,
asa:

# ... hack hack hack ...
$ git checkout -b my_wip
$ git commit -a -m „WIP”
$ git checkout master
$ editați remedierea de urgență
$ git commit -a -m „Remediați în grabă”
$ git checkout my_wip
$ git reset --soft HEAD^
# ... continua să pirateze...

Poți să folosești merge ascunde pentru a simplifica cele de mai sus, astfel:

# ... hack hack hack ...
$ git stash
$ editați remedierea de urgență
$ git commit -a -m „Remediați în grabă”
$ git stash pop
# ... continua să pirateze...

Testarea comiterilor parțiale
Puteți folosi git stash save --keep-index atunci când doriți să efectuați două sau mai multe commit-uri
dintre modificările din arborele de lucru și doriți să testați fiecare modificare înainte de a efectua:

# ... hack hack hack ...
$ git add --patch foo # adaugă doar prima parte a indexului
$ git stash save --keep-index # salvează toate celelalte modificări ale stocului
$ editați/construiți/testați prima parte
$ git commit -m „Prima parte” # commit modificare testată complet
$ git stash pop # pregătiți-vă să lucrați la toate celelalte modificări
# ... repetați cei cinci pași de mai sus până când rămâne un commit...
$ editați/construiți/testați părțile rămase
$ git commit foo -m „Părți rămase”

Recuperarea stocurilor care au fost șterse/scăpate în mod eronat
Dacă scăpați sau ștergeți din greșeală rezervele, acestea nu pot fi recuperate prin normal
mecanisme de siguranță. Cu toate acestea, puteți încerca următoarea incantație pentru a obține o listă cu
stash-uri care sunt încă în depozitul dvs., dar nu mai sunt accesibile:

git fsck --inaccesibil |
grep commit | taie -d\ -f3 |
xargs git log --merges --no-walk --grep=WIP

Utilizați git-stash online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

Comenzi Linux

Ad