androide

Come eliminare un ramo git locale e remoto

Copying a GitHub Repository to Your Local Computer

Copying a GitHub Repository to Your Local Computer

Sommario:

Anonim

I rami fanno parte del processo di sviluppo quotidiano e una delle funzionalità più potenti di Git. Una volta che una filiale viene unita, non serve a nulla se non per la ricerca storica. È prassi comune e consigliata eliminare il ramo dopo una fusione riuscita.

Questa guida spiega come eliminare i rami Git locali e remoti.

Elimina un ramo Git locale

Per eliminare un ramo Git locale usa il comando git branch con l'opzione -d ( --delete ):

git branch -d branch_name

Deleted branch branch_name (was 17d9aa0).

error: The branch 'branch_name' is not fully merged. If you are sure you want to delete it, run 'git branch -D branch_name'.

Come dice il messaggio sopra, puoi forzare la cancellazione usando l'opzione -D che è una scorciatoia per --delete --force :

git branch -D branch_name

Si noti che se si elimina un ramo non unito, si perderanno tutte le modifiche su quel ramo.

Per elencare tutti i rami che contengono modifiche non git branch --no-merged , usa il comando git branch --no-merged .

Se si tenta di rimuovere il ramo corrente, verrà visualizzato il seguente messaggio:

error: Cannot delete branch 'branch_name' checked out at '/path/to/repository'

Non puoi eliminare il ramo in cui ti trovi attualmente. Innanzitutto, passa a un altro ramo e quindi elimina branch_name :

git checkout master git branch -d branch_name

Elimina un ramo Git remoto

In Git, i rami locali e remoti sono oggetti separati. L'eliminazione di un ramo locale non rimuove il ramo remoto.

Per cancellare un ramo remoto, usa il comando git push con l'opzione -d ( --delete ):

git push remote_name --delete branch_name

Dove remote_name è di solito origin :

git push origin --delete branch_name

… - branch_name

Esiste anche un comando alternativo per eliminare un ramo remoto, che è, almeno per me, più difficile da ricordare:

git push origin remote_name:branch_name

error: unable to push to unqualified destination: branch_name The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to '[email protected]:/my_repo'

In situazioni come questa, dovrai sincronizzare il tuo elenco di filiali con:

git fetch -p

L'opzione -p dice a Git di rimuovere tutti i riferimenti di tracciamento remoto che non esistono più nel repository remoto prima del recupero.

Conclusione

In questo tutorial, hai imparato come eliminare i rami Git locali e remoti. I rami sono fondamentalmente un riferimento a un'istantanea delle modifiche e hanno un ciclo di vita breve. Una volta che il ramo viene unito nel master (o in un altro ramo principale), non è più necessario e deve essere rimosso.

Con il comando git branch , puoi anche rinominare, creare ed elencare i rami Git locali e remoti.