2011-05-27 51 views
2

我從任意回購(未在.git/config中進行跟蹤)獲取。取回之後,git loggitk中不會出現任何新內容。我拉後如何合併?如何從任意獲取進行合併?

/home/alice $ touch b && git add b && git commit -m "Added b" 
[master dd8d3ba] Added b 
0 files changed, 0 insertions(+), 0 deletions(-) 
create mode 100644 b 

/home/alice $ cd ../bob 
/home/bob $ git fetch ../alice/ 
remote: Counting objects: 3, done. 
remote: Compressing objects: 100% (2/2), done. 
remote: Total 2 (delta 0), reused 0 (delta 0) 
Unpacking objects: 100% (2/2), done. 
From ../alice 
* branch   HEAD  -> FETCH_HEAD 

/home/bob $ ... now what? 

我通過了什麼樣的論據到git merge

+3

你試過'git合併FETCH_HEAD'嗎? – svick 2011-05-27 20:00:04

+0

@svick - 應該是答案,而不是評論。我正在關注Git Book,並且還沒有在那裏找到這個命令。 – ripper234 2011-05-27 20:03:42

回答

4

你試過git merge FETCH_HEAD

git merge接受任何修訂說明作爲它的參數,所以你可以在那裏寫例如SHA1哈希,somebranch~5或許多其他變體。

FETCH_HEAD引用最後提取的提交。

1

首先,看到由抓取創建的遠程分支:

git branch -r 

然後,創建一個本地分支追蹤遠程分支:

git branch <local_branch> <remote_branch> 

最後,當地分支機構合併成頭:

git merge <local_branch> 
+0

沒有必要創建新的本地分支。如果remote是'upstream',並且新的遠程分支是'something',那麼簡單的'git merge upstream/something'就足夠了,並且將合併遠程'upstream'的'something'分支到當前本地分支中。 – Tadeck 2011-05-27 20:09:24

相關問題