OK, nie można wycofać, ponieważ wykonano zatwierdzenie. Możesz użyć "paska hg", który jest częścią mq (po 2.8 paska znajduje się w jego własnym rozszerzeniu), lub użyj mq, aby usunąć zmiany. Tak czy siak, proponuję zrobić wszystko na innym klonie, na wszelki wypadek.
Aby zrobić Strip aktualizację do rewizji, które chcesz zachować, a następnie
hg strip <REV>
gdzie <REV>
to pierwsza rewizja chcesz usunąć. Usunie to jedno i wszystkie spadki (w tym twoje zatwierdzenie scalenia).
alternatywnie można
hg qnew (if you don't already have a patch queue)
hg qimport <REV>
które będą importować pojedynczą zmianę w kolejce plastra. Następnie możesz dodać więcej, a następnie użyć komend mq do edycji, zmiany kolejności, usunięcia lub cokolwiek chcesz zrobić z tymi wersjami. qdel
usuwa bieżącą poprawkę.
Edytuj: Oczywiście musisz włączyć rozszerzenie MQ dla obu tych opcji, chyba że używasz wersji 2.8 lub nowszej. W tym przypadku pasek jest w przedłużeniu paska, a mq w rozszerzeniu mq. Oba są dostarczane ze standardową instalacją.
Wydaje się działać - 'hg strip x' gdzie' x 'to pierwszy zestaw zmian w przeciągu wydaje się robić lewy. Po tym 'hg out' pojawia się pusty, co jest to, co chcemy .. –
Klonowanie repo do mieć kopię zapasową wydaje się być dobrym pomysłem. SourceTree na OSX można Strip, dostęp poprzez kliknięcie prawym przyciskiem myszy wersji. – ftvs
Dlaczego po prostu nie powrócić do żądanego obrotu? Czy to faktycznie zabija historię, a to jest pożądane z jakiegoś powodu? –