git gerrit 提交專案
阿新 • • 發佈:2019-02-07
- 結合eclipse中整合的git工具和windows安裝的git bash命令列方式提交程式碼到gerrit過程如下:
- 1、先更新專案程式碼,確保遠端分支程式碼同步到了本地,然後:專案右鍵-->team-->Synchronized Workspace-->進入Team Synchronized檢視介面;
- 2、選中要提交的檔案-->右鍵Add to Index-->右鍵commit-->輸入提交日誌(注意此時對應的是需求ID,如APP-99999);
- 3、通過git bash命令在本地push修改的檔案(只有在上一步當中被add to index的檔案才會受push命令影響),命令如:git push origin HEAD:refs/for
- 如果報錯,可能需要重新整理工程專案,然後更新專案,再重新執行push命令;
- ps:
- 當前eclipse工程專案所在分支:20170101
- 1、更新遠端程式碼到本地倉庫
- git fetch
- git stash
- git rebase origin/20170101
- git stash pop
- 2、新增本地修改後的檔案到本地倉庫
- git add D:\.......\hello.java
- 3、提交
- 3.1:
- git commit -m "提交日誌說明";//commit是把修改內容提交到本地倉庫
- 3.2:
- git push origin HEAD:refs/for
- 3.3:修改提交的註釋或者程式碼
- git commit --amend
- //
- git push完以後,如何希望修改程式碼或者追加程式碼到同一個gerrit的changeId提交記錄上,可以通過2種方式:
- 第1種:在eclipce修改完程式碼以後,team synchronizing檢視下專案右擊執行add to index命令,然後執行git status檢視是否add完成(檔案是綠色說明已新增,檔案是紅色說明未新增),
- 之後在git裡面執行git commit --amend命令,輸入:wq退出儲存,此時會發現追加修改的程式碼已經修改生效了,最後執行git push origin head:refs/for
- 第2種:在eclipse修改完程式碼以後,team synchronizing檢視下專案右擊執行add to index命令,然後專案右擊執行commit命令,注意此時寫入的註釋中changeId要和上一次保持一致,
- 最後在git中輸入git push origin head:refs/for/20171111提交程式碼到遠端目標分支;
- 通過上述2種方式都可以保證gerrit上只出現一次提交記錄(記錄裡面會顯示執行了2次change操作)。
- //
- 3.4 解決衝突
- 修改完衝突程式碼以後,在Team Synchronizing檢視下,找到衝突的檔案,右鍵選擇"Mark as Merged"即可。
- 【合併分支】
- 假如所有的改動都在origin/dev-20180101分支上,此時如果想要合併該分支程式碼到主分支master上,執行如下步驟即可:
- 1、確保所有程式碼已提交到origin/dev-20180101分支上,重新檢出master分支程式碼到本地;
- 2、git pull;
- 3、git merge origin/dev-20180101;
- 4、以上就可以了。如果需要push,參考:git push origin head:refs/for/master