Le varie opzioni di prugna (git remote update --prune
, git remote prune
, git fetch --prune
) solo cancellare a distanza di tracciamento rami.
È necessario eliminare manualmente i rami locali che non si desidera più, oppure modificare o rimuovere le impostazioni di upstream se il ramo di monitoraggio remoto non esiste più. Si noti che ogni ramo locale può registrare un telecomando e/o un ramo che non esiste o non ha mai esistito. In questo caso Git agisce principalmente come se le succursali locali non avessero set upstream, tranne che dalla versione 1.8.5, diversi comandi riportano l'upstream come "andato" o altrimenti non valido, e può suggerire di usare --unset-upstream
.
Più precisamente, essi eliminare arbitri di destinazione dopo aver fatto la mappatura refspec dalla riga di comando o fetch
linee dalla configurazione. Quindi, per i mirror di recupero, essi possono eliminare i rami locali. La maggior parte dei cloni non sono impostati come specchi di recupero, però.
Ci sono state alcune correzioni di bug recenti per mappature complesse, per assicurarsi che Git non abbia potato un ramo mappato in alcuni casi quando non dovrebbe. Per qualsiasi repository normale - clone ordinario o puro specchio di recupero - queste correzioni non hanno alcun effetto; sono importanti solo se hai complicato le configurazioni fetch
.
se c'è un ramo elencato in '[]' su 'git branch -vv' non è un ramo di localizzazione remota in quel caso? – yano
Non necessariamente: la cosa in '[...]' è semplicemente l'upstream. Se l'upstream è un ramo di monitoraggio remoto, è in quel momento che è probabile che venga eliminato. Nel tuo esempio, hai '[origine/funzionalità/MyGreatFeature: gone]' che assomiglia a un ramo di tracciamento remoto che è già stato potato. Git ha ancora il 'ramo locale' feature/MyGreatFeature', e in '.git/config', quel ramo ha ancora il suo remoto impostato su 'origin' e il suo set upstream. Puoi, ad esempio, eliminare il ramo locale (che elimina le informazioni di tracciamento) o '--unset-upstream 'su di esso se vuoi mantenere il ramo locale senza set upstream. – torek
questo è sfortunato, ma sembra essere una risposta accurata – yano