2012-09-07 7 views
5

Ho due rami denominati, SPRINT_009 e SPRINT_010. Alcuni changeset sono stati inoltrati a SPRINT_009 che vorrei unire a SPRINT_010. Sono stato in grado di unire i changeset da branch_one di nuovo in default senza alcun problema. Ho problemi a unire i changeset da branch_one a branch_two.Unione mercuriale di due rami denominati: Directory di lavoro non ha antenato

default  A -- B -- C -- G -- H -- I -- J -- K -- L -- N -- O -- P 
         \        \   /
SPRINT_009  D -- E -- F ----------------- ---------- ---------- 
                 \ 
SPRINT_010            M 

Ecco i comandi che sto usando:

hg update branch_two 
hg merge branch_one 

Tuttavia ottengo il seguente messaggio:

abort: merging with a working directory ancestor has no effect 

Qualcuno sa esattamente di cosa sto facendo di sbagliato?

** MODIFICA: ho aggiunto un'immagine del grafico. Il disegno è concettuale ** enter image description here

+0

Come hai disegnato, non ci dovrebbero essere problemi, quindi il disegno è accurato? L'unico genitore di M è L? –

+1

M dovrebbe vedere quel messaggio solo quando si fonde con ABCGHIJK o L (qualsiasi antenato di M). –

+0

@MarkTolonen - Ho aggiornato il post con un'immagine del grafico attuale. – timmy

risposta

14

Il problema era che non avevo eseguito un hg pull prima di tentare l'unione. Normalmente facciamo il nostro sviluppo su una macchina Windows usando TortoiseHg. Abbiamo modificato il nome di una delle nostre risorse sul ramo di supporto, da fooBAR a fooBar e abbiamo incontrato il problema mercurial case folding. Stavamo cercando di aggirare il problema unendo i rami su una scatola Linux. Sono così abituato a usare TortoiseHg che ho dimenticato il più elementare dei comandi!