提问这个问题的方法可能不止一种,所以这里是问题的解释。 我正在做主人并且做了一些事情,然后我决定把这项工作搁置一边。 我支持了一些提交,然后在我开始我的垃圾工作之前分支。 实际上这很好用,我刚才有一个不同的分支作为我的主要开发分支。 我想知道如何改变周围的事情,所以我再次为大师工作,但它没有我的垃圾工作,并说工作是在另一个分支。

可以通过某些方式询问/解决这个问题:如何将我的主分支重命名为其他内容,然后将其他内容重命名为master? 如何备份master然后导致我已经备份的所有提交都在另一个分支上?

感谢所有(快速)答案! 他们都很好。

===============>>#1 票数:142 已采纳

除了其他注释,您可能会发现-m(move)切换到git-branch很有帮助。 您可以将旧主服务器重命名为其他服务器,然后将新分支重命名为master:

git branch -m master crap_work
git branch -m previous_master master

===============>>#2 票数:31

我认为你应该考虑采用不同的发展策略来防止这样的问题。 对我来说似乎最好的一个是永远不要直接在我的主分支上进行开发。 无论我正在做什么改变,我总是为新代码创建一个新的分支:

git checkout -b topic/topic_name master

从那里,我可以推出对公共存储库的更改:

git push pu topic/topic_name

或者最终只是将它与我​​的主分支合并:

git checkout master && git merge topic/topic_name

如果您真的需要回到较旧的时间点并将其设置为主数据库,则可以将当前分支重命名为其他分支,然后查看旧版本作为主数据:

git branch -m master junk
 git co -b master old_sha1_value

===============>>#3 票数:14

master开始,创建一个名为in-progress的分支,然后将master重置为先前的提交。

$ git branch in-progress
$ git reset --hard HEAD^

===============>>#4 票数:7

这相对容易:

git checkout -b fake_master master # fake_master now points to the same commit as master
git branch -D master               # get rid of incorrect master
git checkout -b master real_master # master now points to your actual master
git checkout master                # optional -- switch on to your master branch

===============>>#5 票数:0

这将在一步中将您的主人设置到任何一点:

git checkout -B master new_point

  ask by Daniel Benamy translate from so

未解决问题?本站智能推荐: