2014-12-08 79 views
4

我正在尋找簡單的方法來確定在通過github web界面合併之前,pull request分支是否已經在當前master上重新綁定。到目前爲止,我必須檢查父提交哈希,並將其與最新的主提交哈希進行比較。我希望在合併按鈕旁邊看到一些真/假圖標,以避免合併非重新綁定的分支。任何建議或可能的插件/瀏覽器擴展等?github pull request branch rebase detection

+0

請查看我的回答,並讓我知道你是否在你的問題中遺漏了任何信息。 – 2014-12-10 04:58:35

回答

0

我不知道任何這樣的插件,它可以檢測拉取請求分支是否已重新綁定在主分支之上。無論如何,在合併GitHub上的pull請求之前,您應該習慣總是檢查本地和主分支。但是我發現您的工作流程存在更大的根本性問題。看來你正試圖通過GitHub合併基礎功能分支。這打破了重新分配的主要目的。

重新綁定主服務器上的本地功能部件的全部要點是讓主服務器「領先」,以便您可以使用您的功能中的所有提交快速轉發主服務器分支。的圖將有助於解釋這更好:

master: A <- B 
feature*: A <- B <- C <- D 
(* after rebasing feature branch on master) 

現在,如果你發出git push origin feature:master你會快進主分支整套提交彌補你的特點的。現在主人看起來像特徵分支:

master: A <- B <- C <- D 

請注意,此處不涉及合併。您直接將您的功能中的每個提交直接推送到主分支上。在另一方面,這裏是主人會是什麼樣子,如果你通過GitHub的拉動請求合併特性分支:

master: A <- C <- M 

這裏,M是合併提交包含現已被壓扁整個特性分支。顯然,這是兩個截然不同的結果,你應該仔細考慮你的組織在他們的Git工作流程中真正需要什麼。

最後,請注意,GitHub喜歡強制執行基於合併的工作流程。如果您發現自己正在審覈拉取請求,那麼您應該認識到,很可能您會撤銷某人爲了重新設定其主人的功能所做的精心工作。可以在GitHub中使用rebase,但是你必須解決pull請求。

相關問題