2016-05-31 10 views
1

Мне нужно объединить последние две коммиты в ветке «master» в команду с сбросом команды, но я не мог найти, как это сделать. Я только нашел решение с rebase, но для меня это не сработало. Я буду очень рад за любую помощь, спасибо!Объединить последние два с одним сбросом

Вот последние две фиксаций, если это будет полезно:

commit c6757068ca0768eb7afadb6a87d43fb4f3967d1b 
Author: Name <mail> 
Date: Wed Jun 1 00:13:47 2016 +0200 

    Add name to copyright 

commit 476dae7afcd9f143bb48f932f1281c21d872ebb0 
Author: Name <mail> 
Date: Wed Jun 1 00:13:11 2016 +0200 

    Add tag <i> on line 13 
+0

'git rebase' - это путь. Что именно вы пытались сделать? – jamesdlin

+0

Существует еще один вариант. 'git branch tmp; git reset HEAD ~ 2 --hard; git merge tmp --squash; git add.; git commit;' Обычно это используется, когда вы хотите объединить новые коммиты одной ветви как одну фиксацию в другую ветвь , – ElpieKay

ответ

3

Если вы хотите, чтобы дать перебазирования подход еще один выстрел, используйте git rebase -i HEAD~2. Затем, используя инструмент командной строки, сквойте последнюю фиксацию в более старую, заменив команду «pick» нового комманда «squash».

В качестве альтернативы, если ваш рабочий каталог чист, попробуйте git reset --soft HEAD~2, затем сделайте новый коммит. Содержимое этого коммита будет таким же, как два самых последних фиксации, которые вы пытаетесь объединить в один.

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