2015-09-29 76 views
3

我很難重置一個分支到另一個。在與ours戰略合併之後,我嘗試通過gerrit。我收到「缺少更改ID」的錯誤。默認情況下,合併提交沒有更改ID。我試圖下載自動更改ID的commit-msg鉤子。但它在Windows中沒有幫助。任何想法如何在合併提交中添加更改ID?合併提交沒有更改ID?

+0

你可以添加錯誤信息嗎?和push命令。當你嘗試推動gerrit時會顯示錯誤嗎? – MTZ4

+0

檢查了這一點:[爲什麼不Gerrit包含更改id到合併提交](http://stackoverflow.com/a/24692818/1342413) – HiB

+0

可能的重複[爲什麼Gerrit不包括change-id到合併提交? ](http://stackoverflow.com/questions/19917025/why-does-gerrit-not-include-the-change-id-into-merge-commits) –

回答

3

情況:你有一個需要推送給gerrit的提交,但提交沒有change-id,gerrit不會接受它。

解決方案:

  1. 下載從格里特

    $ scp -p -P 29418 [email protected]:hooks/commit-msg tims-project/.git/hooks/ 
    

    提交-MSG掛鉤是做替換爲自己的端口號,服務器地址和項目名稱。另外,根據您在終端中的當前位置更改tims-project/.git/hooks/的路徑。鉤必須進入<project_dir>/.git/hooks/

  2. 轉到您的回購文件夾,並修改合併提交

    $ cd tims-project/ 
    $ git commit --amend 
    

    在彈出當你修改,目前提交的編輯器和它的提交信息顯示。 這裏什麼都不做。只需退出&即可保存編輯器。由於commit-msg鉤子是一個提交後的鉤子,所以所做的任何提交(創建或修改)都會被自動分配一個change-id。

  3. 推格里特

    $ git push origin HEAD:refs/for/master 
    

    必要時,更換分支機構和遠程用自己的。