所以我做了一些不寻常的事情。我有几个分支,master并且dev. master具有最新的稳定版本,并且dev具有最前沿的技术,并将master在发布时合并。
然而,这并不是很好,因为很多人在提出拉取请求时,会到达主分支。最近,我不得不关闭一个拉取请求,并要求他们从 dev 分支签出一个新分支,并在那里进行更改,因为 dev 分支远远领先于 master 分支,合并会非常棘手。
所以,我决定制作dev master,制作master stable。
我做的第一件事,dev检查了:
git branch -m master stable
然后切换到新分支:
git checkout stable
然后移动dev到master:
git branch -m dev master
所以,我现在在本地有两个分支,master(以前dev)和stable(以前master)。
然后我分别检查了每个分支,并git push origin <branchname>为每个分支运行。
问题
我注意到的第一个问题是,即使在推送之后,在新stable分支(是主分支)上,我也得到了这个git status:
# On branch stable
# Your branch is behind 'origin/master' by 6 commits, and can be fast-forwarded.
#
nothing to commit (working directory clean)
git 仍然认为远程这个分支与 关联master,并且因为我dev进入master,它认为stable是落后的。如何让 git 将此分支与正确的远程分支相关联?
我注意到的第二个问题,在 GitHub 上,分支dev仍然存在。如何删除远程版本?
第三个问题,在 GitHub 上,如果我选择 branch master,它下面会显示对分支的最新提交dev。几次提交会改变这种情况吗?另一个分支也是如此(它表示最新提交masterfor stable)。
如何使远程完全更新到本地仓库中的内容?