git gerrit 提交項目
- 結合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/20170101
- 如果報錯,可能需要刷新工程項目,然後更新項目,再重新執行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 "提交日誌說明";
- 3.2:
- git push origin HEAD:refs/for/20170101;
- 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/20171111命令提交代碼到遠程目標分支;
- 第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