之前合作的案子都是使用 git merge
這次合作的案子被要求使用 git rebase
因此紀錄一下要如何使用 git rebase

git rebase

git rebase 的優點我認為是清楚明瞭,
配合 Pull Request 之後,如果有新的 PR 被接受了(即被合併至 master)
我們只要將我們開發到一半的功能,
使用 git rebase,以最新的 master 分支為基底,
這樣繼續開發下去即可。

相較於 git merge,整個 master 分支會特別的清楚明瞭。
若使用圖形化介面來看, git rebase 只會有一條 master 跟許多從 master 分出去的開發分支,
git merge 則會有許多錯綜複雜的分支互相合併。

流程

  1. 首先先 git checkout 至 master 分支 git pull origin master,確保 master 分支為最新。
  2. git checkout branchToRebase 切換到欲 rebase 的分支。
  3. git rebase master 開始 rebase ,會跟上述的順序一樣一個一個 commit 接到 master 分支上。
  4. 如果遇到衝突了,解完衝突需要看一下有沒有差異,如果有差異,使用 git rebase --continue,如果沒有差異則使用 git rebase --skip