2016-09-23 84 views
3

我想用兩個不同的拉請求來呈現回購所有者,第二個基於第一回。如何在接受任何一個請求之前在現有請求之上堆疊第二個請求?

我有一個現有的拉力要求在回購掛起(即我沒有)。

我想基於我現有的拉動請求的進一步改變。

git push --set-upstream origin B 

master -> A -> B 

我基於I用於A.

git branch -b B A 

我有推上游與分支在我的叉一個分支使我的B中的變化

當我嘗試通過github UI爲B創建一個pull請求時,它給了我A +在單個pull請求中的變化。

如果我嘗試從這個命令行:

hub pull-request -b A 

它不工作,因爲A是不是在上游回購的一個分支,只是在我的叉子。

我應該爲目前有兩個引入請求回購所有者不同的方式來做,一個堆疊在另一個之上?

+0

我試圖在這裏遵循的步驟:https://graysonkoonce.com/stacked-pull-requests-keeping-github-diffs-small/但他的'樞紐拉請求-b A'不爲我工作。可能是因爲他沒有分叉。 –

+1

拉取請求的目的是整體接受/拒絕。如果業主想要拒絕第一個PR並接受第二個PR,會發生什麼?也許你應該創建一個單一的PR? –

+0

嗯。我想他們可以點擊進入單獨的提交,如果他們想要審查理智。所以你認爲我只是誤解了語義上的拉取請求?在單一的拉動請求中堆疊一大堆變化是否可行,是否符合ettiquette? –

回答

1

在一次拉動請求中疊加大量更改是可以的,ettiquette-wise?

如果你的第二次改變絕對取決於第一次,那麼...是的。

話雖這麼說,你應該先解決PR A,這意味着原來的回購應該評估,接受和合並的第一PR的維護者。

在此期間,你可以爲B中的新的分支,根據A,並推動該分支到你的叉子,但你不應該做一個新的PR之前,首先得到解決。
特別是如果第一個PR被拒絕。

在OP的情況:

我結束了治療我所有的堆疊變化一個拉請求,如果他們想合理審查,他們可以點擊進入每一個通過提交一個

那當所有這些變化都可以被視爲一個新的大變革時,這是有道理的。
最佳實踐建議進行小的增量更改,但在此情況下,向現有PR添加提交(因爲實際上無法「堆疊PR」)是向開發過程前進的方式。

+0

這聽起來相當合理。但是我寧願有一堆等待他們的變化,而不是讓他們審覈併合並,然後再發送給他們。我們處於不同的時區,這可能導致我們在幾天內來回跳舞。我最終將所有堆疊的更改視爲一個請求,如果他們想要明智地進行審查,他們可以逐個點擊進入每個提交。我仍然認爲能夠堆疊pull請求會很好,但我會發現這是不可能的!謝謝! –

+0

@ThomasDavidBaker你的解決方案對你來說非常好。我已將您的結論納入答案中,以獲得更多的知名度。 – VonC

+0

謝謝。我真的不想把這個標記爲公認的答案,因爲真正的答案確實是「理想的工作流程不被github支持」。另外,如果存在的話,我想給某人一個更好的東西進行突襲的機會。 –

相關問題