2016-03-05 53 views
-1

我知道GitHub Flow是一個很好的Git工作流程,它簡化了Git workflow。但是,有一個案例並沒有涉及 - 如何合併來自不同用戶的兩個不同的git repos。 GitHub Flow可以提供任何幫助,或者我必須在命令行上完全恢復某些內容?從兩個單獨的GitHub分支中提取未合併的更改

即,GitHub Flow假設人們會相互合作。我的問題是,如果他們不這樣做,我應該如何合併兩個或更多的回購。我談論的是回購協議:

​​和
https://github.com/dinhviethoa/go-imap/

https://github.com/jasonparekh/go-imap/network,我們可以看到,他們在不同的分支,甚至可以在不同的基地。也就是說,github go-imap項目有許多獨立的分支。這些存儲庫都沒有合併回原始的go-imap存儲庫。不管原因是落後的局面是什麼,我想所有這些努力一起拉成一個資料庫,從而使煤礦將包含所有有用的補丁

如何合併在這種情況下,兩個或兩個以上的回購協議?如果我需要在上述network graph的另一個回購合併中該怎麼辦?

+0

讓我看看我是否明白。有一個名爲go-imap的github項目有兩個獨立的分支。每個存儲庫中都有不同的代碼,這些代碼尚未合併回原始的go-imap存儲庫。你想從這些倉庫中獲取一些代碼,並想知道如何獲得全部代碼,因爲代碼來自不同的地方? – mkasberg

+1

人們,我並不是想說「GitHub工作流程」有什麼問題,我只是想知道如何將其擴展到我的特定情況。那些反對票實際上是不必要的敵對。請不要這麼卑鄙。 – xpt

+1

您的問題與github工作流程無關。它歸結爲一個相對簡單的問題,關於如何從github上的不同分支獲取代碼。我認爲你會被低估,因爲你的問題很長,很混亂,而且沒有一個非常準確的標題。您可以考慮根據我的評論來編輯您的原始問題。 – mkasberg

回答

0

有很多方法可以從github上的不同叉子獲取代碼。以下是我該怎麼做:

  1. 克隆原始存儲庫。 git clone https://github.com/mxk/go-imap.git。原因在於您希望將主分支基於該存儲庫的主分支,因此您將繼續通過pull請求或其他方式對其進行改進。
  2. git remote add jasonparekh https://github.com/jasonparekh/go-imap.git加上你想要的任何分叉。重複您想要的代碼的其他存儲庫。
  3. 您的本地存儲庫具有與mxk/master最新的主分支。確保您獲取所有遙控器:git fetch --all。此時,您可以從其他存儲庫開始挑選您想要的東西:git cherry-pick abc123。或者,您可以合併來自遠程存儲庫的整個分支:git merge jasonparekh/v1。這可能有點棘手,並且可能需要根據代碼的哪些部分發生更改來解決合併衝突。

當然,如果你想在一個不是主人的本地分支上工作,那很好,以上所有方面仍然適用。不管你喜歡,你都可以管理你的分支。

相關問題