2014-01-28 42 views
1

所以我分叉並克隆並創建了一個新的分支,做了很少的修改並做了一次git commit。如何更新我的本地回購,而不會丟失我已提交的更改?

但是原始回購(上游)有一些新的變化。我想讓他們到我的本地回購,並確切地到實際的分支,而不會丟失我的已承諾的變化。 我現在有一個提交

我找了大約一個小時如何做到這一點,但它似乎是一個死衚衕,而不知道實際的關鍵字,會得到我的結果。

回答

3

使用git pull --rebase它會將您的提交應用於新提交。

+0

感謝,說我是在分支X和想從主分支做的git拉--rebase上游,我將如何做到這一點? –

+0

你可以做'git pull --rebase origin master',在這裏閱讀有關它的手冊http://git-scm.com/docs/git-pull –

+0

非常感謝你:) –

2

您不提供有關您如何分配代碼的信息,但我認爲您是通過託管服務(如GitHub)完成的。

反正原理是一樣的:

  • 添加主存儲庫作爲遙控器能夠推拉從中
  • 最新修改
  • 再次基於對您工作的修改

如何做,在命令行:

$ git remote add main http://url.git 
$ git fetch main 
$ git rebase main/master master 
+0

被誤編輯了,但我認爲我恢復了原來的內容:) –

+0

這似乎是正確的。 – aymericbeaumet

2

您可以使用此:

$ git checkout master # for your current repo 
$ git remote add other http://url.git 
$ git fetch other 
$ git merge other/master # or whatever branch name is the branch you want. 
相關問題