Idiota

Come eliminare un ramo Git

Come eliminare un ramo Git
Creare rami in Git è facile. È considerata una delle migliori funzionalità di Git. Tuttavia, a causa della presenza di repository remoti e locali, l'eliminazione dei rami può creare un po' di confusione.

In questa lezione, faremo quanto segue:

La lezione dovrebbe darti una comprensione generale del processo di creazione e eliminazione del ramo, in modo da avere una buona padronanza dei passaggi necessari quando è necessario eliminare un ramo locale o remoto.

Iniziamo.

1. Creazione di un repository remoto

Creiamo una cartella chiamata project.git e inizializza come repository remoto:

$ mkdir progetto.idiota
$ progetto cd.idiota
$ git init -bare

Repository Git vuoto inizializzato in /Users/zak/_work/LearnGIT/git_delete_branch/project.idiota/

2. Creazione di una copia locale del repository remoto

In una nuova posizione, creiamo una copia locale denominata project_local del repository remoto utilizzando il comando clone.

Nota: se stai lavorando con GitHub o BitBucket, seguirai la stessa procedura per clonare il repository. In tal caso, avrai un collegamento SSH invece del percorso completo del file utilizzato qui.

$ git clone /Users/zak/_work/LearnGIT/git_delete_branch/project.git project_local
Clonazione in 'project_local'..
avviso: sembra che tu abbia clonato un repository vuoto.
fatto.

3. Creazione di rami all'interno della copia locale

Aggiungiamo prima un file alla copia locale e poi inseriamolo nel repository remoto:

$ cd project_local
 
$ tocca Leggimi.TXT
 
$ git add -A
 
$ git commit -m "Inizializzazione del modulo"
 
[master (root-commit) 81eb2a3] Inizializzazione del modulo
1 file modificato, 0 inserimenti(+), 0 eliminazioni(-)
crea modalità 100644 Leggimi.TXT
 
$ git push origine master
 
Conteggio oggetti: 3, fatto.
Oggetti in scrittura: 100% (3/3), 221 byte | 0 byte/s, fatto.
Totale 3 (delta 0), riutilizzato 0 (delta 0)
A /Users/zak/_work/LearnGIT/git_delete_branch/project.idiota
* [nuovo ramo]       master -> master

Nei comandi precedenti, abbiamo creato un file chiamato ReadMe.txt, lo ha aggiunto alla copia locale, lo ha confermato nella copia locale e quindi ha inviato le modifiche al repository remoto o al ramo principale dell'origine.

Se controlli i rami, vedrai il ramo principale nella copia locale:

$ git branch
* maestro

Se controlli i rami remoti, vedrai anche il ramo principale:

$ git branch -r
origine/maestro

Suggerimento: puoi usare l'opzione '-a' per vedere tutti i rami nei repository locali e remoti insieme.

$ git ramo -a
* maestro
telecomandi/origine/master

Creiamo due branch chiamati b1 e b2 dal branch master:

$ git ramo b1
$ git ramo b2

Verifichiamo se i rami sono stati creati:

$ git branch
 
b1
b2
* maestro

Ora apportiamo alcune modifiche ai rami:

$ git checkout b1
 
Passato al ramo 'b1'
 
$ tocca ramo1.TXT
 
$ git add -A
 
$ git commit -m "Modifica ramo1"
 
[b1 a2f488e] Modifica Branch1
1 file modificato, 0 inserimenti(+), 0 eliminazioni(-)
crea modalità 100644 branch1.TXT
 
$ git checkout b2
 
Passato al ramo 'b2'
 
$ tocca ramo2.TXT
 
$ git add -A
 
$ git commit -m "Modifica Branch2"
 
[b2 2abb723] Modifica ramo2
1 file modificato, 0 inserimenti(+), 0 eliminazioni(-)
crea modalità 100644 branch2.TXT

Controlliamo gli stati dei rami locali e remoti:

$ git branch
 
b1
* b2
maestro
 
$ git branch -r
 
origine/maestro

Possiamo vedere localmente che abbiamo tre branch master, b1 e b2. Ma abbiamo solo il ramo master nel repository remoto.

4. Invio di rami al repository remoto

Inviamo il ramo b1 al repository remoto:

$ git push origin b1
 
Conteggio oggetti: 2, fatto.
Compressione delta utilizzando fino a 4 thread.
Comprimere oggetti: 100% (2/2), fatto.
Oggetti in scrittura: 100% (2/2), 249 byte | 0 byte/s, fatto.
Totale 2 (delta 0), riutilizzato 0 (delta 0)
A /Users/zakh/_work/LearnGIT/git_delete_branch/project.idiota
* [nuovo ramo]      b1 -> b1

Puoi controllare lo stato della filiale locale e remota:

$ git branch
 
b1
* b2
maestro
 
$ git branch -r
 
origine/b1
origine/maestro

Dagli stati del ramo sopra, possiamo vedere che il ramo b1 è disponibile anche da remoto.

5. Eliminazione di rami localmente

Puoi eliminare i rami localmente con l'opzione -d o -D.

git branch -d

Controlliamo prima il ramo master, così possiamo eliminare i rami b1 e b2.

$ git checkout master
 
Passato al ramo 'master'
La tua filiale è aggiornata con 'origine/master'.

Proviamo prima l'opzione -d per eliminare il ramo b1:

$ git branch -d b1
 
errore: il ramo 'b1' non è completamente unito.
Se sei sicuro di volerlo eliminare, esegui 'git branch -D b1'.

L'errore ti dice che devi unire le modifiche dal ramo b1. Questa è una salvaguardia, così non perdi per errore il tuo lavoro sui rami. Puoi usare l'opzione -D per forzare l'eliminazione dell'unione. Ma in questo caso, uniamo le modifiche da b1 e b2 in master e inseriamole nel repository remoto.

$ git merge b1
 
Aggiornamento 81eb2a3… a2f488e
Avanti veloce
ramo1.txt | 0
1 file modificato, 0 inserimenti(+), 0 eliminazioni(-)
crea modalità 100644 branch1.TXT
 
$ git merge b2
 
Fusione realizzata dalla strategia 'ricorsiva'.
ramo2.txt | 0
1 file modificato, 0 inserimenti(+), 0 eliminazioni(-)
crea modalità 100644 branch2.TXT
 
$ git push origine master
 
Conteggio oggetti: 4, fatto.
Compressione delta utilizzando fino a 4 thread.
Comprimere oggetti: 100% (4/4), fatto.
Oggetti di scrittura: 100% (4/4), 454 byte | 0 byte/s, fatto.
Totale 4 (delta 1), riutilizzato 0 (delta 0)
A /Users/zak/_work/LearnGIT/git_delete_branch/project.idiota
81eb2a3… 34db496 master -> master

Ora prova a eliminare nuovamente i rami:

$ git branch
 
b1
b2
* maestro
 
$ git branch -d b1
 
Ramo eliminato b1 (era a2f488e).
 
$ git branch -d b2
 
Eliminato ramo b2 (era 2abb723).
 
$ git branch
 
* maestro

Hai eliminato con successo i rami b1 e b2 localmente.

6. Eliminazione di rami remoti

Quando controlli i rami remoti, vedi ancora b1 presente:

$ git branch -r
 
origine/b1
origine/maestro

È possibile utilizzare il seguente comando per eliminare un ramo remoto:

git push --Elimina

Quindi puoi eliminare il ramo b1 remoto con quanto segue:

$ git push origin --delete b1
 
A /Users/zakh_eecs/_work/LearnGIT/git_delete_branch/project.idiota
- [cancellato]         b1

Ora se controlli i tuoi rami remoti, non dovresti più vedere b1:

$ git branch -r
 
origine/maestro

Congratulazioni! Hai eliminato con successo tutti i rami che hai creato. Esercitati a creare più rami ed eliminarli per padroneggiare il processo di eliminazione dei rami di Git.

Ulteriori studi:

  • https://git-scm.com/book/it/v1/Git-Branching-What-a-Branch-Is
  • https://git-scm.com/book/it/v2/Git-Branches-Branches-in-a-Nutshell
  • https://git-scm.com/book/it/v2/Git-Branching-Basic-Branching-and-Merging
Come invertire la direzione di scorrimento del mouse e dei touchpad in Windows 10
Topo e Touchpads non solo rende l'elaborazione semplice, ma anche più efficiente e richiede meno tempo. Non possiamo immaginare una vita senza questi ...
Come modificare il puntatore del mouse e le dimensioni, il colore e lo schema del cursore su Windows 10
Il puntatore del mouse e il cursore in Windows 10 sono aspetti molto importanti del sistema operativo. Questo si può dire anche per altri sistemi oper...
Motori di gioco gratuiti e open source per lo sviluppo di giochi Linux
Questo articolo tratterà un elenco di motori di gioco gratuiti e open source che possono essere utilizzati per lo sviluppo di giochi 2D e 3D su Linux....