Я провел hg commit --amend
, чтобы исправить фиксацию, но теперь я хочу вернуться к фиксации до того, как я его поправлю. Хеш фиксации фиксации до того, как исправление не появилось в hg log
. Итак, как мне это сделать?Mercurial: Как вернуть фиксацию после внесения в нее изменений
ответ
commit --amend
команда создает резервную копию в каталоге .hg/strip-backup
.
Так что вам нужно сделать сейчас, чтобы выполнить
hg unbundle .hg/strip-backup/<your-backup-name>
Где <your-backup-name>
это имя резервного копирования является тот, который сказал вам, когда вы выполнили amend
.
После этого - первоначальные изменения будут повторно применены к исходному корню, и вы можете strip
все, что вам больше не нужно.
Если вы включили evolve extension, изменения, которые были удалены с помощью «hg commit -amend», больше не будут перезаписаны. Вместо этого они скрыты с маркерами устаревания, но их можно просмотреть и восстановить в обычном наборе изменений.
Чтобы просмотреть скрытые команды изменений из командной строки, просто добавьте --hidden в обычную команду, например. «hg glog --hidden -l 10». В черепахе панель инструментов фильтра (^ S) имеет значок, который отображает скрытые списки изменений.
Evolve еще не является частью официальной ртути, но должно стать таким. [Как вы видите, это уже поддерживается черепахой.] Я использую его целую вечность, и он работает очень хорошо. Это намного проще, чем пытаться найти старый пакет, которому было дано неясное имя с даты, которую вы больше не можете запомнить. Полная история - все это в вашем местном репо.
Вопрос Newb: заданный идентификатор узла или номер набора изменений для устаревшего набора изменений, как мне восстановить его? То есть как я могу пометить его «не устаревшим»? – jacobsa
- 1. Mercurial: Предотвращение внесения определенных изменений
- 2. Композитор возвращается после внесения изменений
- 3. Обновление записи после внесения изменений?
- 4. Как синхронизировать репозиторий android после внесения изменений?
- 5. Как сохранить JTable после внесения изменений
- 6. Как восстановить список после внесения изменений
- 7. setInterval после внесения изменений в textarea
- 8. Обновить форму после внесения изменений на второй
- 9. AdoNetAppender перестает работать после внесения изменений
- 10. Git предотвращает толкая после внесения изменений фиксации
- 11. Forking Git repo после внесения изменений
- 12. Fluxbox компиляция проблемы после внесения изменений
- 13. JavaScript не работает после внесения изменений
- 14. Как заблокировать редактирование журнальных сообщений после внесения изменений?
- 15. Не отображает новые данные после внесения изменений
- 16. Алгоритм внесения изменений
- 17. Как вернуть фиксацию и создать новую ветку из этих изменений?
- 18. как перезагрузить приложение nodejs после внесения изменений в файл?
- 19. Как слить после резервного копирования Mercurial
- 20. PrimeNG: как «упаковать» или «построить» проект после внесения изменений?
- 21. Как сделать UIAlertView вызовом `alertViewShouldEnableFirstOtherButton:` после внесения изменений?
- 22. Как вернуть Mercurial hg pull?
- 23. Git: Uncommit без внесения изменений
- 24. MongoDb + Mongoose QueryStream - После внесения изменений в документ
- 25. Способ внесения изменений в db после долгого таймера
- 26. Проверка кода SQL после внесения изменений в исходный код
- 27. Обновить Докер-контейнер после внесения изменений в изображение
- 28. Ошибка при связывании после внесения изменений в код компилятора ocaml
- 29. git push изменения в другую ветку после внесения изменений
- 30. обновляющая модель нокаута после внесения изменений в источник данных upshot
Как определить имя резервной копии? Я вижу это, когда я запускаю команду 'hg commit -amend', но есть ли способ ее найти, если вы не помните вывод этой команды? – Robz
Ну, просто проверьте, что у вас в этом каталоге, и попытайтесь сопоставить время резервного копирования и время команды 'amdend'. – zerkms
Хм, хорошо, что работает. Я делаю много исправлений во многих записях ... Нет ли лучшего способа? – Robz