2016-11-07 52 views
0
Gerrit version: 2.12.4 
Git version: 1.7.9.5 

Project Options 
Submit Type: Merge if Necessary 
Allow content merges: false 
Create a new change for every commit not in the target branch: false 

由於Gerrit中的「合併衝突」,櫻桃挑選提交到目標分支失敗。所以我們在當地做這件事,看看衝突是什麼。櫻桃挑選通過Gerrit UI失敗,但通過本地git-cherry-pick成功

克隆存儲庫。檢出目標分支。沒有提交新的提交。複製並粘貼櫻桃挑選命令git fetch ssh://foo refs/changes/xx/yyyxx/1 && git cherry-pick FETCH_HEAD而沒有額外的選項。櫻桃選擇不會失敗,並且沒有衝突。推送,審查和提交。完成。所以通過本地git命令可以很好地工作。

我做了一個測試。如果我將Allow content merges設置爲true,則無此衝突。但「允許內容合併」並非如此,因爲它有時會以錯誤的方式解決小衝突。

我想知道是否有人遇到類似的情況,以及爲什麼Cherry Pick在Gerrit和本地回購中表現不同。

感謝您的意見。

回答

0

本地您正在使用Git,但格里特使用JGit ...也許有是在合併策略它們之間的一些區別。

+0

如果JGit沒問題,但Git失敗了,我可能會責怪合併策略。看起來,git-cherry-pick沒有任何選項可以使預計成功的櫻桃挑選失敗。所以我想知道這是否是一個錯誤。 – ElpieKay