2012-01-05 71 views
16

Gerrit系統僅由我們幾個人使用。 一旦發生變更A,其狀態爲:「已提交,合併待審批」。 「打開」網頁中的更改列表。 另外我注意到這個變化對另一個變化B(哪個狀態被放棄)有依賴性。Gerrit更改狀態:已提交,合併待定,如何解決?

  1. 如何使A列在「合併」網頁上?
  2. 如何讓B消失,讓A不再依賴B?
+1

我問了[類似問題](http://stackoverflow.com/q/20496959/1469208),並得到了一些更詳細的(對新手有用)的答案。 – trejder 2013-12-12 12:00:12

回答

21

如果變更A對B有依賴關係,那麼在B被合併之前A不能被合併。由於您已經放棄B,Gerrit不會自動合併A.

您需要做的是修改A(可能使用git rebase),以便它不再依賴於B,並將更改重新提交給Gerrit。

+0

那麼如何讓B從網頁中消失? – gemfield 2012-01-05 06:40:28

+0

你已經放棄了B.你還想用它做什麼? – 2012-01-05 23:18:11

+1

@GregHewgill我想他的意思是如何從Gerrit中刪除更改B條目,就好像它從來沒有存在過(因此它不會顯示在Gerrit Web UI的任何位置)。我認爲從Gerrit網絡用戶界面不可能實現,因爲放棄的更改項目可讓您從廢棄狀態恢復更改。如果仍然想要刪除它們,可以從後端手動執行(儘管我從未嘗試過) – Vikram 2013-07-18 13:57:33

1

Greg說的是正確的,自動合併是不可能的。通過使用Gerrit的「cherry pick」選項(基本上是手動合併),可以合併A。不幸的是,這不會消除Gerrit的「Merge Pending」狀態。如果投稿人不會因爲發生重建而感到困擾,我通常會爲此寫下評論。

0

我有「提交,合併掛起」無任何依賴性或衝突同樣的問題。快速修復是通過所有未清項目,並查看是否有任何其他提交「已提交,合併待定」狀態。如果是的話,就放棄他們。

然後git commit --amend -m「你原來的評論」和git再次推送,這次你可以修改你的修正。

2

僅供參考。當用戶在同一頁上按兩次提交(她雙擊提交按鈕)時,我遇到了「提交,合併等待」的問題。它發生在Gerrit 2.11。

錯誤日誌看起來像

Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:  Duplicate entry '5173-2-1' for key 'PRIMARY' 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 

提交之前,只有1提交(更改代碼)。但是在雙擊後有2個提交。第二個是新的提交消息和「提交,合併待定」狀態。

當我刪除了所有有關第二承諾:

$ ssh -p 29418 [email protected] gerrit gsql 
gerrit> delete from `patch_set_approvals` where change_id=5173 and patch_set_id=2; 
gerrit> delete from `patch_set_ancestors` where change_id=5173 and patch_set_id=2; 
gerrit> delete from `patch_sets` where change_id=5173 and patch_set_id=2; 

它標誌着由用戶Gerrit代碼審查集成。

0

我面對這個問題,因爲我把一個標籤分支名:

git tag x.y.z HEAD 
git push -f origin x.y.z:master 

因此,更好地推動一個分支,而不是,

git tag x.y.z HEAD 
git push -f origin HEAD:master 

這樣格里特能夠再次合併我的懸而未決的補丁。

0
  1. 放棄你從Gerrit的推動。

在終端:

  • git的日誌
  • GIT中復位HEAD〜n的
  • 其中n是從頂部提交的列表提交計數在步驟2的終端上生成。

    1. git add。
    2. git的承諾-m 「你的消息」
    3. 混帳推

    現在合併您提交的格里特。

    相關問題