Подтвердить что ты не робот

Многократная фиксация вишни

У меня есть 33 фиксации в основной ветки, которые сведены. Теперь мне нужно вести запись аккуратно. Итак, теперь я создал ветки функций, и я пытаюсь классифицировать эти 33 фиксации в разных ветвях функций. Таким образом, можно ли одновременно выбирать несколько коммитов для копирования в соответствующей ветки функции? И я также столкнулся со своими конфликтами, когда я пытался совершить несколько коммитов с помощью команды вишневого выбора.

git cherry-pick A B C

здесь A, B, C - хэш-код коммитов.

4b9b3361

Ответ 1

Вы делаете это правильно. Сводка -

git cherry-pick [--edit] [-n] [-m parent-number] [-s] [-x] [--ff] <commit>...

git cherry-pick идет слева. Вы можете заказать, как хотите. Если у вас есть конфликт, у вас есть три варианта. вы можете git cherry-pick --quit (прекратите сбор вишни и пусть ваше дерево в его текущем состоянии), git cherry-pick --abort (прекратите сбор вишни и reset вашу ветку до состояния, где он был, прежде чем вы начнете git cherry-pick), или разрешите это конфликт с редактором или с git mergetool, а затем git cherry-pick --continue перейти к следующему фиксации в вашем списке.

Ответ 2

Если вам нужно аккуратно вести запись, вам лучше создать ветвь темы и запустить git rebase -i <commit before the 33rd>, интерактивную rebase. Следуйте инструкциям по удалению коммитов. Это должно быть проще, чем сбор вишни, так что многие совершают в определенном строгом порядке.