2010-06-07 10 views
25

Come posso annullare la creazione di un ramo in Mercurial? Ad esempio, se impartisco il comandoAnnullamento della creazione di un ramo in Mercurial

hg branch newbranch 

Come posso cancellare questo ramo se decido di aver inserito il nome sbagliato? Sto indovinando che questo deve essere abbastanza semplice da fare, ma devo ancora capirlo. Grazie!

risposta

20

se non hai eseguito alcun commit, non è stato creato. quindi basta emettere un altro hg branch newname.

+0

Hmm, sembra che abbia commesso il ramo allora. Ops. Che posso risolvere. Grazie comunque per una soluzione veloce! Questo è ancora utile. –

+1

in quel caso non credo che sia possibile poiché il nome del ramo è parte della revisione. se è così importante potresti 'hg spogliare 'il ramo e rifarlo tutto di nuovo :) –

+1

Boo! Non dovresti suggerire "strip" senza includere un avvertimento sui gravi e gravi rischi nel caso in cui altre persone abbiano già effettuato il repo. –

2

Supponendo di non aver effettuato il push su un repository remoto, abilitare l'estensione mq e strip la diramazione.

3

Se la sua già impegnati:

  • hg clone -b branch1 [-b branch2 [-b ..]] oldrepo newrepo, vale a dire tutti i rami tranne newbranch, si tradurrà in nuovi repo senza la newbranch.
  • Se estensione mq è abilitata, hg strip

Guardare in editing history prima di apportare modifiche permanenti nel repository.

36

Se non avete ancora commesso, si può semplicemente fare un reset pulita come da manuale (http://www.selenic.com/mercurial/hg.1.html#commands):

hg branch -C 

Questo resetta nome del ramo della directory di lavoro al genitore del ramo che si appena creato.

+0

Solo per errore creato un ramo senza commit e 'hg branch -C' è chiaramente la strada da percorrere. – alwillis

+0

Questo meglio risponde alla domanda sollevata nel titolo. –

+0

Questa è la vera risposta. –

Problemi correlati