如何将主人移到HEAD?

* [971f835] (HEAD, original_idea) Now working here. Some comment 9
* [692b673] Some comment 8
* [3ebff62] Reverted to original idea. Some comment 7
| * [72ea01d] (master) Decided it wasn't worth the effort. Some comment 6
| * [985c1ad] Some comment 5
| * [4d7d491] Some comment 4
| * [0c697bb] Branched to try an idea. Some comment 3
|/
* [7280b1f] Some comment 2
* [5c2c6d0] Some comment 1
* [bc7aac6] Initial commit

所以, master留下了。 不知道这是怎么发生的。 一旦我确定我已经完成了没有工作的分支,我就退出了[7280b1f]并从那里继续。

我该如何解决? 我这个臭名昭着的“独立头”问题?

master是否必须与HEAD对齐以获得回购的最佳健康状态?

我的工作流程非常简单。 这只是管理一个文本文件。 在绝大多数情况下,它是:

git add .
git commit -am "Some comment"

就是这样。

我决定尝试一个想法并创建一个分支。 当它不工作时,我检查了该分支的根目录并返回到git add/commit例程。


这是臭名昭着的“独立头”问题吗?

不,HEAD指向分支original_idea

大师是否必须与HEAD对齐以获得回购的最佳健康状态?

不,主人只是一个传统的名字,通常被认为是一个可以随时建立的分支,并且希望有一个工作快照。

我该如何解决?

如果您已将主服务器推送到另一个存储库,则需要将您从original_idea所做的更改合并到主服务器中:

git checkout master
git merge original_idea

请注意,如果有任何冲突的更改,您需要解决它们。

如果您尚未将主服务器推送到其他存储库,则可以删除master并从original_idea重新创建它。 警告:每个在主人工作的人都必须重置他们的主分支。

$ git checkout master
Switched to branch 'master'

$ git checkout -b experiment_1
Switched to a new branch 'experiment_1'

# Here we are going to delete master.  Should be safe, since experiment_1
# was created from this point on the previous command

$ git branch -d master
Deleted branch master (was 72ea01d).

$ git checkout original_idea 
Switched to branch 'original_idea'

# Now that we checked out the branch HEAD is pointing to, we can recreate master

$ git checkout -b master
Switched to a new branch 'master'

如果git branch显示你当前的分支是original_idea,那不会是分离的HEAD情况。

但无论如何,如果你想让你的主人反映你的“当前提交”(这是HEAD在Git中的含义):

git branch -f master HEAD
git checkout master

您可以在“如何将”我的提交从“无分支”移动到实际分支?“中找到其他替代方法。”

这样做的问题是,它使得当前以master为结尾的整个分支消失。

然后,你需要做的是:

  • 确保HEAD被分支引用(如架构中的original_idea
  • 在主控制器上重建分支:
  • 这意味着:

    git checkout original_idea
    git rebase master
    git checkout master
    git merge original_idea
    
    链接地址: http://www.djcxy.com/p/23613.html

    上一篇: How to move master to HEAD?

    下一篇: Git: How to move back and forth between commits