Mercurial Commits vs График фактического производства - PullRequest
3 голосов
/ 21 сентября 2011

Хорошо, я пока не вижу это всплывающее окно как комбинированный вопрос по Mercurial, но это то, что я недавно заметил.

Если посмотреть на другие репозитории для разработки программного обеспечения, коммиты в значительной степени «идеальны», поэтому, если целью было исправить функцию f (), то коммит просто «исправил f () с помощью ---». Моя вещь, я сомневаюсь, что каждое исправление происходило всего за один коммит.

Я бы хотел что-то вроде

[1: попытка x исправить f] -> [2: попытка y исправить f] -> [3: попытка z исправить f] -> [4: f исправлена]

Я заметил с именованными ветвями или без них, если я попытаюсь затем объединить [4: fixed] с имеющейся у меня «стабильной» ветвью, то, выталкивая или вытягивая изменение, оно вытягивает [1: 4], а не только [4 ].

Я хотел бы только внести чистую коррекцию в репозиторий или в производственную установку. Какой самый простой способ поделиться всеми моими не тестовыми изменениями?

Ответы [ 2 ]

2 голосов
/ 21 сентября 2011

Расширение rebase с --collapse.

1 голос
/ 21 сентября 2011

Если вы хотите нажать только чистую ревизию, сделайте только чистую ревизию. Объединение нескольких локальных наборов изменений в 1 (а-ля Амбер ответ) является одним из способов.

Я предпочитаю использовать Mercurial Queues и выполнять часть работы в патче. Затем, когда он завершится, я заканчиваю патч и становлюсь набором изменений.

...