2017-05-07 134 views
2

我分叉了一個GitHub項目,在開發分支中做了一些更改,並提交了一個pull請求。該項目業主表示,他將在一兩週內合併我的變更,但自那之後,兩個月過去了。同時,由於我在研究論文中使用這些變化,因此我希望將這些變更提供給全世界。將開發分支合併到我的分支中,同時保留合併到主分支的選項

我想將我的開發分支合併到我的fork中的主分支中,以便人們可以通過我的fork使用更改; 但是,我也想讓項目所有者最終將我的更改合併到主叉中。

這可能嗎?

回答

1

當然這是 - 只要去你的主人,與你的發展合併,並沒有任何問題。

您發送拉請求的事實不會改變您的存儲庫或分支機構的任何內容。你仍然可以在你身邊做任何你喜歡的事情。

首先,您的存儲庫和他的存儲庫是單獨的。無論你在你身上做什麼都不會反映他的意見,反之亦然。這就意味着不管你(他)如何將這些變化合併爲主人 (或者在開發上製作新的人) *)都不會影響其他人的回購。此外,您發送的請求將保持不變, *),直到他做了一些事情。

如果他合併該拉取請求,您的存儲庫不會注意到這一點。它會留下來,直到你與他的'父'回購同步( - > PULL)。

同樣,他的回購也不會讓你注意到合併。事實上,在你做完之後,他可以與你的版本同步,就像你在發佈新的提交時可以與他同步一樣。在Git中,沒有'父'和'子'存儲庫,都是相同的,因此對於Git和推/拉/等操作,在任何方向上同步都沒有問題。

此外,如果執行合併現在,他忽略了它,然後他做了一些改變,然後在一段時間後他決定合併你的補丁 - 你將能夠與他的repo同步以獲得最新的變化(反之亦然)。這是因爲Git記得什麼與什麼合併,並且會注意到你已經有了你之前的更改合併了你當前的更改。

如果你不得不等待他做任何事情,那麼'分佈式源代碼控制系統'會有什麼意義?

當然,如果你們兩人做合併的時間點差異很大,當你與另一方同步時,你(他)可能會發生一些衝突,但是,任何合併都可能會結束。

*)一個警告:Pull-Request會跟蹤您的存儲庫。如果你從你的發明中發送了一個PR,你不應該在需要的時候保持你的發展。這是因爲( - >How to update a pull request)如果您向devel分支提交任何新內容,則GitHub的PullRequest會認爲這是更新,PR也會使用此新提交進行更新。所以,通過從發展中發送PR,你基本上鎖定了你的發展,直到PR得到解決。這就是爲什麼你應該做一些其他的分支,即important-fixes-may-2017(是的,這是一個非常糟糕的名字),等於你的發展,並從該分支做出公關。這樣,這個分支就會被公關人員觀察到,你的開發者可以自由地玩。

但是,這一切不會改變您的主人是免費玩的事實。您可以結賬主,與開發合併,這不會改變他的觀點。只有當您向發起PR的分支提交任何內容時,您發送的Pull-Request纔會得到更新 - 也就是說 - 如果您承諾devel

(和暫時,如果你想改變什麼了,而不更新PR,就在同一個點作爲devel的工作對一個創建一個分支devel2

+0

你能幫助我這個http://stackoverflow.com/questions/43826650/error-could-not-apply-tried-it-in-proper-way-by-seeing-instructions-but-st?noredirect=1#comment74692370_43826650 –

相關問題