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?
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?
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?
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?
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à.