Mercurial: исправление поврежденной истории
Поэтому, работая над проектом недавно (я сам - без других разработчиков), я каким-то образом сумел серьезно увязать историю с некоторыми (очевидно) неудачными слияниями из клонированных репозиториев.
То, что я хотел бы сделать - нужно сделать - это исправить это, просто удалив последние 8 коммитов (в соответствии с hg glog
)
Да, я сделал несколько изменений в коде после начала обработки, однако только несколько изменений здесь или там - ничего, что я не могу исправить свежим из памяти.
Как я могу избавиться от последних 8 коммитов и начать все заново с того места, где я облажался?
1 ответ
Создайте клон своего хранилища - когда вы это сделаете, вы можете указать последний коммит, который должен быть клонирован.
Итак, если ваш репозиторий имеет 100 наборов изменений и вы хотите избавиться от наборов изменений от 93 до 100, просто сделайте это:
hg clone -r 92 BadRepository CleanRepository
-> CleanRepository
будет содержать только наборы изменений от 1 до 92.
Если вы используете TortoiseHG, вы можете сделать то же самое в диалоге Clone (есть текстовое поле "Clone to revision:")