2014-06-19 14 views
8

So che questo è stato chiesto, ho visto così le mie risposte, ma nulla sembra funzionare.Git: impossibile eliminare permanentemente il ramo remoto

Ecco il mio flusso di lavoro. Crea una nuova filiale e lavoraci. A volte uso più computer così ho spinto a distanza in modo che avrei potuto ottenere altrove

git branch new_branch 
git checkout new_branch 
git push -u origin new_branch 

fare un po 'del mio lavoro su uno dei molti computer quindi unire a padroneggiare e spingere.

git checkout master 
git merge new_branch 

Ora voglio eliminare il ramo.

git branch -d new_branch (this works fine and when I run 'git branch' it only shows local master 
git branch -r -d origin/new_branch (now on this computer when i run 'git branch -r' it's gone like it should be) 

Ma dopo posso cancellare il ramo a distanza, non importa quale computer sono in se 'git pull' o 'git fetch' è ri-tira che new_branch. Ho provato tutti i comandi di prugna che ho visto e tutto il resto. Ma continua a mostrarsi.

risposta

16

È necessario eseguire questa operazione per rimuovere il ramo sul telecomando.

git push origin --delete new_branch 

Questo rimuoverà il ramo chiamato new_branch dal repository remoto. (Il new_branch è una diramazione locale sul telecomando. Per dirla in altro modo, se fosse possibile effettuare l'accesso cd al repository remoto, rendendolo il repository locale, avrebbe un ramo locale chiamato new_branch. Questo è il ramo che si sta rimuovendo con comando di cui sopra.)

Quando si esegue

git branch -r -d origin/new_branch 

tutto ciò che accade è che si sta rimuovendo il puntatore filiali remote che è nel tuo repository locale. Questo ultimo comando non cambia nulla nel repository remoto.

Dopo aver rimosso il ramo sul telecomando (utilizzando il primo comando sopra riportato), quindi git remote prune origin inizierà a funzionare sugli altri computer, rimuovendo i rami remoti origin/new_branch.

Problemi correlati