В большинстве случаев решение VonC просто идеально.Однако, если откат не возможен (например, потому что рассматриваемый коммит не последний или потому что вы сделали сложный частичный коммит), тогда вы можете сделать новый коммит с обратным различием нежелательных изменений в File_C
:
hg diff -c REVISION --reverse File_C | hg import -m "Revert changes to File_C" -
Где REVISION
относится к коммиту, где File_C
был зафиксирован случайно.Первая команда создает обратный diff для рассматриваемого файла.Его выходные данные передаются в hg import
(не забудьте завершающий -
).
ОБНОВЛЕНИЕ: Вы также можете использовать команду backout :
hg backout -I File_C REVISION
hg commit -m "Revert changes of File_C in REVISION" File_C
Команда backout изменяет вашу рабочую копию в том смысле, что она отменяет изменения в File_C
, зафиксированные в rev.REVISION
.После этого возврат совершается явно.