2013-10-12 49 views
2

我在Git中執行了以下操作,現在有一個錯誤的依賴關係問題。git pull後Gerrit中的錯誤依賴

  1. 創建一個新的分支,使用git checkout -b fixPlayer
  2. 我做了一些修改代碼,並創造了一些新的文件太多,則上演了使用git add -A
  3. 犯然後我通過git commit
  4. 提交更改然後幾天後我創建了一個新的分支,使用git checkout -b fixLaserAim
  5. 這裏混亂開始了,我想)。我以爲我的本地工作副本「主人」可能已經過時,所以在這個分支中,我跑了git pull。我認爲這導致了某種合併問題。所以我切換回主,更新它(git checkout master,git pull),然後切換回我的第二個分支git checkout -b fixLaserAim
  6. 我完成了我對fixLaserAim的更改,提交階段git add -A,並提交它git commit
  7. 最後,我切換到我的早期分支「fixPlayer」,並將其推送到git push origin HEAD:refs/for/master,然後切換到我的「fixLaserAim」分支,並執行相同的操作。

這兩個變化都出現在Gerrit中,但由於某些原因,「fixLaserAim」指出它依賴於「fixPlayer」。這兩者並沒有觸及任何相同的文件,我試圖找出如何在Gerrit中刪除這種依賴關係,因爲它阻止了自動化構建,並且這種變化最終進入了生產環境。

我該如何解決這個問題?

+0

你爲什麼要刪除依賴?每個提交都依賴於以前的提交 - 這是正常的。當你放棄提交時,則必須再次推送依賴提交。 – HiB

+0

[如何擺脫錯誤的依賴](http://stackoverflow.com/questions/10402285/how-to-get-rid-of-false-dependencies-in-gerrit) – HiB

+0

我已經發現了這個問題,但它沒有幫助,因爲我確實爲每個補丁創建了一個新的分支。 – DevNull

回答

1

最後,這是Git本身的服務器端bug。解決。