Ho eseguito il commit e ho apportato alcune modifiche al ramo sbagliato. Ho trovato un modo per risolverlo, ma sembra eccessivamente complicato. È davvero il modo più semplice?
- sul ramo in cui hai apportato le modifiche, digita
hg parent
- Esegui
hg diff -r <parent> -r <with_changes> > patch.diff
-
hg up <proper_branch>
-
hg import --no-commit patch.diff
-
hg ci -m 'committing changes to proper branch'
-
hg up <bad_branch>
-
hg parent
per trovare il changeset precedente su questo ramo che è buono -
hg ci --close-branch -m 'closing bad branch'
-
hg up <last_good_changeset>
- aggiungi uno spazio o un'altra modifica minore
-
hg ci -m 'making tip'
-
hg push
Qualcosa a quell'effetto comunque. L'ho fatto in un ordine leggermente diverso; Ho apportato di nuovo il suggerimento alla punta e ho dovuto eseguire un commit forzato perché creava una nuova testa, quindi è stato necessario eseguire
hg heads 'hg branch'
Per trovare di nuovo il ramo cattivo, quindi chiudilo. Ora mostra ancora il changeset cattivo come "suggerimento" perché l'ho chiuso dopo ho "ribaltato" il ramo buono, ma quando si aggiorna a quel ramo, credo che occorra il più recente non- testa chiusa?
Sembra un processo abbastanza ridicolo per risolvere un errore così semplice.
C'è un modo più semplice per farlo? Perché no?