在我們的項目中,新需求的研發在develop_demmand分支,上一個版本的維護在develop分支;
develop_demmand merge develop
1. 進入develop分支,pull更新到最新的代碼;
$ git pull origin develop
2. checkout到develop_demand分支
$ git checkout develop_demand
3. 執行全部pull
$ git pull
4. merge分支develop到demmand
$ git merge develop
這個時候需要特別注意的是如果兩個分支的二進制文件都有修改,就會merge不成功;
這種情況下就要把develop分支的二進制修改移植到demmand上來(手動merge);
- 手動merge時,head是最新的,develop代表以前的,刪除的時候先刪除>>>和<<<字樣
- merge成功後編譯一下,可鞥會有異常沒有解決;
- 然後運行一下,確保程序能正常運行;
注意:有時候merge的時候需要輸入提交信息,我們直接wq退出就行,如果結果中帶了changeid,就不需要執行step 5,step 6,step 7,直接進入到step 8
$ git status
這個時候已經merge下來了,我們需要把這些merge的代碼提交到demmand分支上去;
$ git commit
這個時候會提示一屏,我們使用:wq寫入並推出就可以;
$ git commit --amend
使用–amend給提交添加changeid;
$ git push origin develop_demand
9. 代碼服務器通過代碼
develop merge develop_demmand
1. 進入develop_demand分支,pull更新到最新的代碼;
$ git pull origin develop_demand
2. checkout到develop分支
$ git checkout develop
3.執行全部pull
$ git pull
4. merge分支demmand到develop
$ git merge develop_demmand
5. 查看一下本地狀態
$ git status
這個時候已經merge下來了,且這些merge的代碼自動commit到了develop分支上;提示我們使用git push指令。
6. push代碼到遠程
$ git push origin develop
這個時候可能提示no new change 而提交失敗,我們這個時候使用如下命令
$ git commit --amend
然後什麼也不做,直接保存退出就好,可以重新生成sha1,然後就可以push了