No, non c'è.
Quando si uniscono i due rami, il commit di unione dipende dall'esistenza dei due commit principali. Ciò significa che non è possibile rimuovere i commit che compongono il ramo unito, a meno che non si elimini anche il commit unione, che non si desidera eseguire.
Anche questo non è il "modo Mercurial" di fare le cose. Quando un ramo è stato fuso in un altro ramo e non è stato effettuato alcun ulteriore sviluppo su quel ramo, Mercurial riconosce che quel ramo non è più attivo; hg branches
metterà quei rami inattivi nella parte inferiore dell'elenco. Si può anche chiudere un ramo utilizzando hg commit --close-branch
, che rimuoverà il ramo dalla lista hg branches
(a meno che non viene dato il parametro -c
).
Sembra che dovresti esaminare le code Mercurial (MQ), perché questo supporta un flusso di lavoro simile a quello che descrivi. Ad esempio, è possibile impostare più code MQ e ognuna di queste rappresenta un ramo di sviluppo.
fonte
2012-08-31 12:19:05
La tua risposta è quasi perfetto (e ho upvoted esso) ma @lvica dovrebbe guardare i segnalibri prima di MQ. MQ è difficile. È un vero strumento powertool e sta cadendo in disuso ora che le fasi (e presto obsolete) sono qui. I segnalibri, d'altro canto, sono perfetti per le suddivisioni per funzione, in cui i rami denominati permanenti potrebbero essere eccessivi. –
@ Ry4an Sì, me ne sono dimenticato (perché non li ho mai usati). Come gestisci l'eliminazione dopo l'unione con i segnalibri? –
Basta eliminare il segnalibro con 'hg bookmark --delete bookmark_name'. Un sacco di grandi informazioni qui: http://mercurial.selenic.com/wiki/Bookmarks/ –