1. git pull --rebase
- 這個命令是用來更新當前分支的,它會從遠程倉庫拉取更新,然后將你的本地提交重新應用到更新后的基礎之上。
- 它相當于先執行 git fetch,然后在當前分支上執行 git rebase origin/。
- 使用 --rebase 而不是默認的 merge 可以保持歷史記錄更線性,這對保持提交歷史的整潔有幫助。
2. git rebase origin/master:
- 這個命令是明確地將當前分支的提交重新應用到 origin/master 的基礎之上。
- 它假定你已經更新了 origin/master,即可能需要先執行 git fetch origin。
- 適用于你在一個特性分支(feature branch)上工作,并希望在 master 分支的最新提交之上繼續開發。
使用 git pull --rebase 的場景:
保持當前分支與遠程分支同步:
當你在一個分支上工作,并且需要定期同步遠程倉庫中的最新變更以確保你的工作是基于最新代碼進行的。
使用 git rebase origin/master 的場景:
特性分支開發:
當你在一個特性分支(feature branch)上工作,并希望將你的工作與 master 的最新變更結合在一起時。
一般執行git rebase origin/master之前,應該保證本地當前分支跟遠程已經是同步的情況下, 不然單執行這條命令是無太大意義的
繼續rebase
在執行上述任意一條命令后,假如出現了conflict,在手動解決conflict后,需要執行git rebase --continue
繼續完成rebase,然后再add、commit、push