2016-08-30 34 views
0

我推送到Gerrit,我的代碼進行審查,使有效的意見。我做了這些修改,並且假設我已經創建了一個新的修補程序集,然後進行全新的提交和推送。如何在推送到Gerrit時更正不正確的Change-Id?

不過,我忘了勾選「修改提交」對話框中的IntelliJ:

enter image description here

這意味着,新的提交被推向格瑞特有新的變化-ID,並因此改變呢不會與之前的推動相關聯。現在我的審稿人不能(輕易地)在兩個變更之間建立聯繫,將來也不會有人看到這一點。

我的提交消息是多行的,所以如果我想要執行git amend,不能在命令行上輕易修改。

我的方法是嘗試並撤銷'壞'提交---但我最終在Git Hell中感到困惑。

我結束了:

  1. 檢查出產地/掌握到我的筆記本電腦一個新的回購和手動
    再次讓我的變化(是真的),然後
  2. 停用承諾,味精勾在我的.git/hooks目錄中,然後
  3. 使用手動添加到消息中的所需Change-Id進行提交,然後將
  4. 推送到Gerrit。
  5. 最後我重新激活提交,味精勾

這不可能做到這一點的最好辦法。它有效,但它不是最好的方式。

什麼?

+0

爲什麼在命令行中不能輕鬆更改多行提交消息?你只需要執行「git commit --amend」,有什麼問題? –

回答

1

您應該將壁球兩個最後一個提交到一個,在消息中保留最初的Change-ID。壁球允許你將不同的提交合併爲一個。它發生在交互式變形過程中。解釋做到這一點using command line.

你可以使用this example做使用接口。