2011-03-17 24 views
7

łączymy za pomocą tego procesu:Mercurial - podstawowy proces, aby powrócić do scalenia i spróbuj ponownie

cd c:\myapp 
hg pull ssh://hg/myapp-1_0_1 
hg merge 

Teraz czasami bałagan scalania lub czasami pojawia się błąd (to znaczy: „nie można scalić plik xxx - plik w użyciu "). Zwykle po prostu usuwam moje repozytorium c: \ myapp, ponownie klonuję z repozytorium zdalnego i zaczynam od nowa. To działa, ale to jest ból. Jaki jest lepszy sposób?

Przeczytałem o użyciu hg update -C, ale nie jestem jasne w tym procesie. Więc zrobiłbyś hg update -C, to by usunąć scalone pliki, ale zachować zestawy zmian, które zostały usunięte, a następnie wydać ponownie komendę hg merge i spróbować ponownie?


Aktualizacja W odniesieniu do związanych question: hg update -C nadal utrzymuje Zestawienia zmian w repo, które rozebrano z hg pull - w jaki sposób można pozbyć się tych?

+3

"C" w 'aktualizacji hg -C' nie jest symbolem zastępczym dla zestawu zmian. To tylko stara stolica, trzecia litera alfabetu. –

+0

Thx - zaktualizowany post. –

+0

możliwy duplikat [Jak zrezygnować z łączenia hg?] (Http://stackoverflow.com/questions/2570087/how-to-abandon-a-hg-merge) –

Odpowiedz

14

hg update -C jest po prostu idealny. Dlaczego chcesz pozbyć się wyciągniętych zestawów zmian? Ponieważ polecenie aktualizacji aktualizuje się na początku wyciągniętych zmian? Jeśli to jest twój problem z wyciągniętymi zmianami, uruchom hg update -C <revision-of-your-local-head> i nie przejmuj się ciągniętymi zmianami, prawdopodobnie i tak będziesz je ciągnąć w pewnym momencie. Po aktualizacji kontynuuj pracę lub spróbuj ponownie scalić.

Jeśli jednak naprawdę chcesz pozbyć się wyciągniętych zmian, użyj polecenia strip.

3

Zobacz ten post How to abandon a hg merge?

+1

Moja pamięć nie jest w najlepszym wydaniu dzisiaj ... Kiedy zobaczyłem to pytanie, przejrzałem swoje własne * zadane pytania, ponieważ wiedziałem, że już o to pytałem. Najwyraźniej miałem * odpowiedział * to. Myślę, że potrzebuję więcej kawy ... –

Powiązane problemy