我有一个与 GitHub 一起使用的存储库。以前,repo 只有 1 个分支(即 master),并且与远程 repo 完全保持同步,但是在完成了 2 次本地提交的新实验工作后,我决定我想做的是创建一个新分支“开发”分支上的这 2 个提交仍然可以在 GitHub 上作为替代分支访问。
因此,我做了以下事情:
git branch dev # create new branch
git reset --hard HEAD~2 # roll back 2 commits on HEAD
git checkout dev # make dev the active branch
在本地,现在一切都很好。我现在有两个本地分支:(master
在稳定版本上落后了 2 个提交),dev (HEAD)
在当前的实验工作中。
但是,在 GitHub 方面,一切都不好:我有两个分支,master (HEAD)
并且dev
,但是它们都完全相同(即两个最新的提交都在master
分支上,而实际上我只希望它们在dev
分支上)。
所以总结一下,如果我们调用最新的不稳定提交(开发工作)、提交 10 和稳定提交编号 8,那么我们有以下内容:
10 - dev
, origin/master
, origin/dev
,origin/HEAD
9
8 -master
所以问题是我如何origin/master
正确指向提交 8。(而且我对origin/HEAD
所有这一切中的角色感到困惑......)