Come tirare le modifiche da un ramo all'altro in git

Come tirare le modifiche da un ramo all'altro in git
Un repository Git contiene uno o più filiali per gestire il codice in modo efficiente. A volte, gli utenti di Git devono lavorare contemporaneamente con le più filiali e richiedono di passare da un ramo a un altro ramo con le modifiche apportate nella filiale precedente alla filiale corrente prima di commettere. Questa attività può essere svolta utilizzando più modi in GIT. Il comando Stash può essere utilizzato dal terminale e unisci i comandi dal desktop GitHub per estrarre le modifiche da un ramo a un altro ramo in questo tutorial.

Prerequisiti

1. Installa il desktop GitHub
Il desktop GitHub aiuta l'utente Git a eseguire graficamente le attività relative al GIT. Puoi facilmente scaricare l'ultimo programma di installazione di questa applicazione per Ubuntu da GitHub.com. È necessario installare e configurare questa applicazione dopo il download per utilizzarla. Puoi anche controllare il tutorial per l'installazione di Github Desktop su Ubuntu per conoscere correttamente il processo di installazione.

2. Crea un account GitHub
Dovrai creare un account GitHub per verificare l'aspetto del repository remoto dopo aver pubblicato la modifica del repository locale.

3. Crea un repository locale
È necessario creare un repository locale per controllare i comandi utilizzati in questo tutorial.

Uso del comando Stash

Il repository locale chiamato PHP2 è stato usato in questo tutorial per mostrare come estrarre le modifiche da un ramo a un altro ramo del repository. Crea un file denominato indice.html nel repository. Apri il terminale e vai nella cartella del repository. Esegui i seguenti comandi per controllare l'elenco della filiale, passare al ramo principale e visualizzare lo stato della filiale.

$ git filiale
$ git checkout master
$ git status

Verrà visualizzato il seguente output dopo aver eseguito il comando sopra. L'output mostra che il repository contiene due rami e il principale Branch era attivo inizialmente. Dopo essere passati al file maestro ramo, l'output dello stato mostra che il ramo corrente è attivo e L'indice.html Il file è non tracciato.

Esegui i seguenti comandi per tracciare il file non tracciato e controllare di nuovo lo stato del repository Git.

$ git aggiungi indice.html
$ git status

Verrà visualizzato il seguente output dopo aver eseguito i comandi sopra. L'output dello stato lo mostra L'indice.html Il file viene aggiunto al repository ma deve impegnarsi.

Esegui i seguenti comandi e controlla nuovamente lo stato del repository Git. Il comando "Git Stash" funziona come il comando "git commit". La directory di lavoro del repository verrà pulita dopo aver eseguito questo comando.

$ git stash
$ git status

Il seguente output apparirà eseguendo i comandi sopra.

Dopo aver eseguito il comando Stash per una filiale, se l'utente GIT vuole attirare le modifiche del ramo in un altro ramo, può essere fatto facilmente usando il comando "Git Stash Pop" che funziona come il comando "Git Munge". Esegui i seguenti comandi per passare a il principale ramo e tira i cambiamenti dal maestro ramo al principale ramo.

$ git checkout main
$ git stash pop

Verrà visualizzato il seguente output dopo aver eseguito il comando sopra che mostra che il ramo corrente è principale e il indice.html Il file viene aggiunto in questa filiale.

Esegui il comando seguente per commettere l'attività precedente con il messaggio di commit e controllare di nuovo lo stato.

$ git commit -m "file indice aggiunto"
$ git status

Verrà visualizzato il seguente output dopo aver eseguito i comandi sopra. L'output dello stato mostra che l'albero di lavoro è pulito ora dopo il commit.

Se le modifiche al repository locale vengono spinte nel repository remoto e il repository remoto viene aperto da GitHub.com, quindi il repository sarà assomigliato alla seguente immagine.

Uso del comando Merge

Questa parte di questo tutorial mostra un altro modo per estrarre le modifiche da un ramo a un altro ramo. Il repository locale chiamato Leggi file ha usato qui. Crea un file chiamato Read.PHP nella posizione del repository. Esegui i seguenti comandi per passare al ramo principale, aggiungi la lettura.File PHP e commettere l'attività. Il comando Branch visualizzerà l'elenco di filiale. Il comando checkout cambierà la filiale su Master. Il comando di stato visualizzerà lo stato corrente della filiale. Il comando ADD aggiungerà il file non tracciato nel repository. Il comando commit confermerà l'attività.

$ git filiale
$ git checkout master
$ git status
$ git aggiungi leggi.PHP
$ git commit -m "leggi lo script viene aggiunto"

Verrà visualizzato il seguente output dopo aver eseguito i comandi sopra. La lettura.Il file PHP è stato aggiunto al ramo principale del repository e anche l'attività è stata impegnata.

Dopo aver completato l'attività di cui sopra, se le modifiche apportate in maestro Branch richiede il trasferimento nel principale ramo, quindi la fusione Il comando può essere utilizzato per eseguire questa attività. Il comando Merge può essere utilizzato dal terminale o utilizzando l'applicazione Desktop GitHub. Il modo di usare il desktop github per unire i rami ha mostrato in questa parte del tutorial. Apri il repository locale in Github Desktop. Apri la finestra di dialogo Elenco di filiali facendo clic su l'elenco dei rami dal Visualizzazione menu e selezionare il principale ramo come ramo attivo. Ora, fai clic su Unire il ramo attuale .. dal Ramo menù. Seleziona il maestro ramo dalla finestra di dialogo e fai clic su Unire il maestro nel principale pulsante per estrarre le modifiche del maestro ramo in il principale ramo. Puoi eliminare il maestro Branch Dopo aver completato l'operazione di unione se la filiale non richiede il repository.

Conclusione

In questo tutorial sono stati mostrati due modi diversi per estrarre le modifiche da un ramo a un altro ramo utilizzando due repository locali. IL scorta E unire I comandi di git sono stati usati qui per svolgere l'attività. Il desktop GitHub è stato usato in questo tutorial per mostrare il modo di fondere graficamente i rami.