2012-12-11 19 views
11

如何從Git中的fork分支的父級更改,特別是在github配置的項目中?從Git中的fork父級更改變更

例如,假設我將http://github.com/originaluser/originalproject分爲http://github.com/myuser/myproject。我不打算將我的項目作爲永久性分支,因爲我只想維護一個「開發」分支來測試一些實驗性功能,然後最終將其合併回原始項目。

因此,無論何時提交到原始項目,我都希望能夠將它們拉下來並將它們與myproject合併。但是,我也希望能夠將更改推送到myproject中,但尚未立即創建拉取請求,以便將它們合併到originalproject中,直到完成並測試完分支。什麼是最好的方法來做到這一點?

編輯:默認情況下,當我爲本地開發創建github fork的本地checkout/fork,然後推/拉變更時,這些更改只會影響我的個人分支。我從來沒有從原始項目中獲得變化。我如何解決這個問題?

抱歉,任何不正確的git術語。

+0

你已經描述了你想要做的事情,這很好,但是我沒有看到任何問題要在這裏解決。這不適合你嗎? –

+0

@GregHewgill,不,我編輯了我的問題來澄清我的問題。 – Cerin

回答

8

您可以將父存儲庫(上游)添加爲另一個遠程分支。喜歡的東西

git remote add upstream ... 

,然後你可以混帳取看到任何更改,然後變基/合併...不管。

+1

我該怎麼做? – Cerin

+2

克隆你的fork(myuser/myproject),cd進入它,然後輸入git remote add upstream https://github.com/originaluser/originalproject.git,然後輸入git fetch。之後,您應該擁有master(您的本地master分支),origin/master(您的remove master分支)以及最終上游/ master(原始項目的master),您可以從中將更改拖放到存儲庫中。 –

+0

您還需要在'git fetch'上指定新的遠程服務器,否則它不會獲取它:'git fetch upstream'完成了這個訣竅。 – Kev