Мне нужен совет по процессу разработки с Mercurial при работе с унаследованным кодом.
Когда я разрабатываю новую функцию для унаследованного проекта, мне часто приходится реорганизовывать часть существующего кода во времяособенность реализации.Я имею в виду, я не ожидал рефакторинга, и мне нужно сделать это до , переходя к реализации функции, так как я буду использовать реорганизованный код.
Поскольку я думаю, что рефакторинг полезендаже если функция не реализована, я хочу, чтобы она была сама по себе набором изменений, а не частью "набора изменений".Кроме того, поскольку я работаю с устаревшим кодом, он не является хорошо тестируемым модулем, поэтому мне нужно протестировать (вручную) только рефакторинг без кода разрабатываемой функции.
Итак, мой текущий процесс, когдаРабота старого кода выглядит следующим образом:
- работа над функцией
- упс, мне нужно что-то реорганизовать, поэтому
- извлекает патч из текущего состояниямоя рабочая копия
- отменить изменения
- выполнить рефакторинг и протестировать!
- зафиксировать изменение в репозитории Mercurial
- повторно импортировать патч и обработатьс конфликтами вручную
- вернуться к 1.
Есть ли что-то, что я мог бы улучшить в моем процессе с Mercurial?Есть ли способ временно сохранить рабочую копию и получить mercurial разрешение конфликтов, когда я возвращаю сохраненные изменения в мою рабочую копию?
Если нет, то git рассматривает этот вариант использования больше, чем mercurial?