git merge & git rebase

git merge 合併分支(保留歷史提交)

1.切換到個人分支
2.合併develop分支到個人分支git

git checkout mybranch
git merge develop

合併後git log查看mybranch,全部歷史提交都在。
提交比較完整的保留,若是你的提交比較雜亂,這就成了缺點。並且merge會引入一個合併提交。it

git rebase 變基&合併分支(丟棄原始提交,造成線性提交歷史)

1.切換到個人分支
2.合併develop分支到個人分支ast

git checkout mybranch
git rebase develop

合併後git log查看mybranch,提交歷史是以最新develop分支爲基礎的,mybranch本身的提交記錄在新基礎的後方。即線性提交。
我的理解 rebase可顧名思義,重置基礎。意識是以develop爲最新基礎,merge上mybranch的修改。基礎

交互式的rebase

參數:-i總結

git checkout feature
git rebase -i master

Rebase的黃金法則

1.不能在公共分支上使用它。好比master,develop。
2.一般用在你本身的獨享分支上。項目

總結

1.想要保存項目完整的歷史,而且避免重寫公共分支上的commit,使用git merge

2.想要一個乾淨的、線性的提交歷史,沒有沒必要要的合併提交,使用 git rebase

相關文章
相關標籤/搜索