Git Delete Remote Branch: eliminare un branch remoto
Ultimo aggiornamento
Eliminare un branch in locale non lo rimuove dal remote: è un passaggio separato. Per eliminare un branch sul remote (per esempio GitHub), esegui git push origin --delete <branch>. Dopo, gli altri cloni potrebbero continuare a vedere il branch finché non fanno il prune dei riferimenti di tracciamento remoti obsoleti.
Prova questi comandi nel terminal playground: una vera shell nel tuo browser, senza installare nulla.
Sintassi
| Comando | Cosa fa |
|---|---|
git push origin --delete feature | Elimina feature sul remote |
git push origin :feature | Vecchia sintassi con i due punti, stesso effetto |
git branch -d feature | Elimina il branch anche in locale |
git fetch --prune | Rimuove i branch di tracciamento remoti obsoleti |
Pulizia completa
Rimuovi il branch ovunque e sistema i riferimenti obsoleti.
| Passo | Comando | Risultato |
|---|---|---|
| 1 | git push origin --delete feature | Sparito dal remote |
| 2 | git branch -d feature | Sparito in locale |
| 3 | git fetch --prune | Elimina il riferimento di tracciamento origin/feature |
Domande frequenti su come eliminare un branch remoto in Git
Come elimino un branch remoto in Git?
Esegui
git push origin --delete <branch>. Questo rimuove il branch dal remote (per esempio GitHub). L'equivalente più vecchio è git push origin :<branch>. Eliminare il branch remoto non elimina la tua copia locale: fallo a parte con git branch -d <branch>.Eliminare un branch locale elimina anche quello remoto?
No.
git branch -d rimuove il branch solo dal tuo repository locale. Il branch resta sul remote finché non lo elimini esplicitamente con git push origin --delete <branch>. Le due cose sono indipendenti.Perché il branch eliminato compare ancora?
Gli altri cloni mantengono i riferimenti di tracciamento remoti (come
origin/feature) finché non ne fanno il prune. Esegui git fetch --prune (o git remote prune origin) per rimuovere i riferimenti ai branch che non esistono più sul remote.Che differenza c'è tra --delete e la sintassi con i due punti?
Fanno la stessa cosa.
git push origin --delete <branch> è la forma moderna più chiara; git push origin :<branch> è la sintassi più vecchia (fa il push di "niente" sul branch remoto, che così viene eliminato). Usa --delete per maggiore leggibilità.Posso esercitarmi online?
Sì. Apri il terminal playground per eseguire questi comandi in una vera shell nel tuo browser, senza installare nulla. Il corso interattivo gratuito di Git di Coddy spiega anche come lavorare con i remote passo dopo passo.