2015-06-26 91 views
1

我有分支機構主和功能。快速組合一堆提交在一起的方法(git)

功能提前約20次提交。

我想一起擠壓所有提交,所以當我合併時我有一個提交。有一種方法可以用一個命令來做到這一點嗎?我知道我可以做一個互動的底線;但我正在尋找一個讓這個變得簡單的命令。

+0

你想保持特性分支的提交歷史,或擺脫它 –

回答

4

是的!

在主分支:

git merge --squash feature-branch

+0

偉大工程的感謝! –

0

您可以使用

git rebase -i {revision-number} 
git rebase --interactive {revision-number} 

-i意味着你將進入交互模式。您指定要從中進行合併的修訂版。

進入交互模式後,您將選擇第一個pick選項,其他squash。通過這種方式,您可以將功能分支中的多個提交合併爲一個提交。然後,你可以這樣做:

git checkout master 
git merge feature 

這裏是一個很好的解釋:

http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html