2013-02-20 1 views
0

Используя git, я создал локальную ветвь для работы. Затем я совершил свою работу постепенно. Итак, я получаю 3 фиксации в том же запросе на тягу, который мне понравился, чтобы объединить их в один.Объединить много коммитов в одну под одной ветвью

я основал, что есть способ сделать это, если мы будем следовать следующие шаги:

  • git rebase -i HEAD~3

=> Все совершают в отрасли перечислены ниже

pick mycommit1 
pick mycommit2 
pick mycommit3 
  • Чтобы объединить их в первый, мне нужно установить команды mycommit2 и mycommit3 ввместо pick

Но, в моем случае, есть много фиксаций между моими фиксациями в главной ветви, таким образом, я не могу это сделать.

После этого я спрашиваю, могу ли я сделать слияние JUST в моем запросе на тяну.

Ваши идеи приветствуются.

Благодаря

ответ

0

Вы можете использовать команду fixup во время перебазирования. Эта команда выполняет то же самое, что и squash, но сохраняя сообщение первой фиксации. Например:

pick 123abcd 
pick abc1234 
pick a1b2c34 

Вы можете изменить это:

pick 123abcd 
f abc1234 
f a1b2c34 

Теперь вы присоединиться к этим 3 фиксаций в один совершить который получит первое сообщение. Если вы хотите изменить сообщение только один раз, вы можете сделать это следующим образом:

pick 123abcd 
f abc1234 
s a1b2c34 

Это означает, что эти 3 коммиты будут объединены в один фиксации, и вы можете редактировать этот коммит.


Extra Совет: Для того, чтобы сделать его проще изменить каждый pick к команде, вы можете просто использовать ВИМС блок выбора функции, чтобы выбрать все «выбрать и изменить его в команду, которую вы хотите.

 Смежные вопросы

  • Нет связанных вопросов^_^