[email protected]:/media/dev/belgravia$ git branch
* (no branch)
master
我不知道这是怎么发生的,但有没有办法我可以合并不分支到主。我不知道如何合并两个分支,当他们中的一个不是分支时。没有分支的提交似乎是松散的。恐怕checkout master
会导致数据丢失。合并(没有分支)到主
[email protected]:/media/dev/belgravia$ git branch
* (no branch)
master
我不知道这是怎么发生的,但有没有办法我可以合并不分支到主。我不知道如何合并两个分支,当他们中的一个不是分支时。没有分支的提交似乎是松散的。恐怕checkout master
会导致数据丢失。合并(没有分支)到主
使用git show
获取当前HEAD的SHA1提交ID。有了这些信息,你不能失去那些提交。
然后,切换到掌握和:
git merge abc123
其中abc123
是从所述第一步骤中的SHA1。
我最终做的是`分支温度`,`结帐大师`,`合并温度` 。这不会将分支移入实际分支,然后我可以合并它。然而你的解决方案更简单。 – Keyo 2011-01-13 02:51:47
你(无分支)是你必须做的原因:你所要做的
git checkout REMOTE_BRANCH_NAME
git checkout -b local_branch_new_name
git branch - a
local_branch_new_na我
master
从这里你可以将分支合并到主通常的方式。切换到主做:
混帐合并local_branch_new_name
也许你可以提交其对当前分支(无分支)
然后你要做的:
git reflog
之后,你可以得到这个承诺的ID像1d84d08
做:
git checkout master
git merge 1d84d08
在我的情况下,刚发生在`git rebase`期间发生冲突之后。只要做'git rebase - continueue',它会将你带回到之前的分支。 – Frank 2012-08-14 21:32:15
也相关:http://stackoverflow.com/questions/366093/git-commit-against-tag-with-no-branch – rogerdpack 2012-12-20 22:26:09