logo

Git Stash

A volte vorresti cambiare ramo, ma stai lavorando su una parte incompleta del tuo progetto attuale. Non vuoi impegnarti con un lavoro fatto a metà. Git stashing ti consente di farlo. IL comando git stash ti consente di cambiare ramo senza impegnare il ramo corrente.

La figura seguente mostra le proprietà e il ruolo dello stashing relativo al repository e alla directory di lavoro.

Git Stash

Generalmente, il significato della scorta è ' conservare qualcosa in modo sicuro in un luogo nascosto .' Il senso in Git è lo stesso anche per stash; Git salva temporaneamente i tuoi dati in modo sicuro senza impegno.

Lo stashing prende lo stato disordinato della tua directory di lavoro e lo salva temporaneamente per un ulteriore utilizzo. Molte opzioni sono disponibili con git stash. Di seguito sono riportate alcune opzioni utili:

    Metti la scorta Git stash salva Elenco delle scorte Git Git stash si applica Modifiche alla scorta Git Prendi la scorta pop Ottieni la scorta Pulisci la scorta Git stash branch

Lavoro di archiviazione

Capiamolo con uno scenario in tempo reale. Ho apportato modifiche al mio progetto GitExample2 in due file da due rami distinti. Sono in uno stato disordinato e non ho ancora modificato completamente alcun file. Quindi voglio salvarlo temporaneamente per un uso futuro. Possiamo metterlo da parte per salvarlo come stato attuale. Per mettere da parte, diamo un'occhiata allo stato attuale del repository. Per verificare lo stato corrente del repository, esegui il comando git status. Il comando git status viene utilizzato come:

interfaccia c++

Sintassi:

 $ git status 

Produzione:

Git Stash

Dall'output sopra, puoi vedere lo stato della presenza di due file non tracciati design.css E nuovofile.txt disponibile nel repository. Per salvarlo temporaneamente possiamo utilizzare il comando git stash. Il comando git stash viene utilizzato come:

Sintassi:

 $ git stash 

Produzione:

Git Stash

Nell'output fornito, il lavoro viene salvato con il comando git stash. Possiamo controllare lo stato del repository.

Git Stash

Come puoi vedere, il mio lavoro è semplicemente nascosto nella sua posizione attuale. Ora la directory viene pulita. A questo punto è possibile passare da un ramo all'altro e lavorare su di essi.

Git Stash Save (Salvataggio degli Stash con il messaggio):

In Git, le modifiche possono essere nascoste con un messaggio. Per nascondere una modifica con un messaggio, esegui il comando seguente:

Sintassi:

 $ git stash save '' 

Produzione:

Git Stash

La scorta sopra verrà salvata con un messaggio

Elenco Git Stash (controlla gli stash archiviati)

Per controllare le scorte memorizzate, esegui il comando seguente:

Sintassi:

 $ git stash list 

Produzione:

Git Stash

Nel caso precedente, ho creato una scorta, che viene visualizzata come ' stash@{0}: WIP sul test: file CSS 0a1a475 '.

Se abbiamo più di una scorta, verranno visualizzate tutte le scorte rispettivamente con un ID scorta diverso. Considera l'output seguente:

Git Stash

Mostrerà tutte le scorte con l'indicizzazione come scorta@{0}: scorta@{1}: e così via.

Git Stash Applica

Puoi riapplicare le modifiche che hai appena nascosto utilizzando il comando git stash. Per applicare il commit, utilizzare il comando git stash, seguito dall'opzione apply. È usato come:

Sintassi:

 $ git stash apply 

Produzione:

Git Stash

L'output sopra ripristina l'ultima scorta. Ora, se controllerai lo stato del repository, mostrerà le modifiche apportate al file. Considera quanto segue produzione:

trasforma la stringa in int
Git Stash

Dall'output precedente, puoi vedere che il repository è stato ripristinato al suo stato precedente prima di stash. Mostra l'output come ' Modifiche non organizzate per il commit .'

In caso di più di uno stash, è possibile utilizzare il comando 'git stash apply' seguito dall'ID dell'indice stash per applicare il commit particolare. È usato come:

Sintassi:

 $ git stash apply 

Considera l'output seguente:

Produzione:

Git Stash

Se non specifichiamo uno stash, Git prende lo stash più recente e prova ad applicarlo.

Modifiche a Git Stash

Possiamo tenere traccia delle scorte e dei loro cambiamenti. Per visualizzare le modifiche nel file prima dell'operazione di stash e dopo l'operazione di stash, eseguire il comando seguente:

Sintassi:

 $ git stash show 

Il comando precedente mostrerà il file nascosto e le modifiche apportate su di esso. Considera l'output seguente:

Produzione:

Git Stash

L'output precedente illustra che ci sono due file nascosti e due inserimenti eseguiti su di essi.

Possiamo tenere traccia esattamente delle modifiche apportate al file. Per visualizzare il contenuto modificato del file, eseguire il comando seguente:

Sintassi:

 $ git stash show -p 

Qui, -p sta per la scorta parziale. Il comando dato mostrerà i file e il contenuto modificati, considera l'output seguente:

Produzione:

Git Stash

L'output sopra mostra il nome del file con il contenuto modificato. Funziona allo stesso modo del comando git diff. IL git diff il comando mostrerà anche l'output esatto.

Git Stash Pop (riapplicazione delle modifiche nascoste)

Git consente all'utente di riapplicare i commit precedenti utilizzando il comando git stash pop. L'opzione popping rimuove le modifiche dalla scorta e le applica al file di lavoro.

Il comando git stash pop è abbastanza simile a git stash apply. La differenza principale tra entrambi questi comandi è il comando stash pop che elimina lo stash dallo stack dopo averlo applicato.

come convertire una stringa in un numero intero Java

Sintassi:

 $ git stash pop 

Il comando precedente riapplicherà i commit precedenti al repository. Considera l'output seguente.

Produzione:

Git Stash

Git Stash Drop (Unstash)

IL git stash drop il comando viene utilizzato per eliminare una scorta dalla coda. Generalmente, elimina la scorta più recente. È necessario prestare attenzione prima di utilizzare il comando stash drop, poiché è difficile da annullare se una volta applicato.

L'unico modo per ripristinarlo è se non chiudi il terminale dopo aver eliminato la scorta. Il comando stash drop verrà utilizzato come:

Sintassi:

 $ git stash drop 

Produzione:

Git Stash

Nell'output sopra, la scorta più recente (custodia@{0}) è stato eliminato da tre scorte. Il comando stash list elenca tutti gli stash disponibili nella coda.

Possiamo anche eliminare una determinata scorta dalla coda. Per eliminare un particolare stash dagli stash disponibili, passare l'id stash nel comando stash drop. Verrà elaborato come:

Sintassi:

 $ git stash drop 

Supponiamo che io abbia due scorte disponibili nella mia coda e che non voglia eliminare la mia scorta più recente, ma voglio eliminare quella più vecchia. Quindi, verrà gestito come:

 $ git stash drop stash@{1} 

Considera l'output seguente:

Git Stash

Nell'output precedente, il file commit scorta@{1} è stato eliminato dalla coda.

Git Stash Cancella

IL svuota la scorta il comando consente di eliminare tutte le scorte disponibili contemporaneamente. Per eliminare tutte le scorte disponibili, utilizzare il comando seguente:

Sintassi:

 $ git stash clear 

eliminerà tutte le scorte esistenti nel repository.

Produzione:

Git Stash

Tutte le scorte vengono eliminate nell'output sopra. Il comando git stash list è vuoto perché non ci sono stash disponibili nel repository.

Git Stash Branch

Se hai nascosto del lavoro su un ramo particolare e continui a lavorare su quel ramo. Quindi, potrebbe creare un conflitto durante la fusione. Quindi, è bene nascondere il lavoro su un ramo separato.

Il comando git stash branch consente all'utente di nascondere il lavoro su un ramo separato per evitare conflitti. La sintassi per questo ramo è la seguente:

Sintassi:

 $ git stash branch 

Il comando precedente creerà un nuovo ramo e trasferirà il lavoro nascosto su di esso. Considera l'output seguente:

Produzione:

Git Stash

Nell'output precedente, il lavoro nascosto viene trasferito a un ramo testing appena creato. Eviterà il conflitto di unione sul ramo principale.

Inkscape contro Gimp