1. 程式人生 > >git 命令之git rebase 用法

git 命令之git rebase 用法

1.出現情況的背景:

   當你提交的程式碼後,管理員發現,您的程式碼不能提交到伺服器上,主要原因在於,你的commit 中和伺服器中的有些commit不再同一時間軸上,即:你的有些commit要插入到伺服器中的某些commit之間,這樣就會造成程式碼的衝突。所以這個時候就要使用git rebase。

 假如,你平時使用的分支叫 new ,然後在這個分支上你剛提交過幾個commit。

 做法:

1.新建一個分支,並且程式碼和伺服器中程式碼同步

   git checkout origin/v2.0 -b temp  

2.為了保證新建的temp分支程式碼是最新的,可以多執行下面一步

  git pull

3.當你新建分支後,系統會自動checkout到temp分支上,此時

  git checkout  new

4.合併程式碼,並整理

  git rebase  temp  //會將temp分支的程式碼合併過來,並按照提交的順序排序

5.  因為順序是重新整理的,所以肯定會出現衝突

6.解決衝突,最後 git add * ,但不許要git commit

7.解決後,執行 git rebase --continue

8.重新提交程式碼: git push for-*

注意:如果要對某些程式碼的commit重新整理

1. 可以記住某個commit號

2. git rebase -i commit號

3. 會顯示一個整理提交的介面,有很多引數,e。p。等等

4.將前面的引數改為e。則wq儲存後,系統會自動讓你重新修改commit內容

5.修改完成後,再git push for-*