GIT - 如何使一个分支与主分支相同

41

我有一个使用git的网站

设置中,主分支为线上网站,开发分支为dev域名,用于测试功能是否可以上线

所有工作都不会直接在主分支或开发分支上进行,都是在特性分支上完成,然后合并到开发分支进行测试,之后再合并到主分支上以上线

我的问题是,我有一个网站,有很多工作已经合并到了开发分支,但这些工作永远不会上线

现在要求我使开发分支与主分支匹配,以确保那些永远不会上线的工作不会影响其他新功能的测试

我做了一些研究,据我所知,我不能使用rebase,因为它更适用于更新自从你创建分支以来提交的内容

似乎唯一能够满足我的需求的选项是重命名开发分支,然后从主分支重新创建它,并强制推送以更新远程分支

这是我最好的选择吗?还是还有其他我不知道的方法?或者rebase才是正确的,但我没有完全理解其目的?

提前感谢


你能解释一下你的意思吗?“使开发分支与主分支匹配,以确保从未上线的工作不会影响合并到开发分支的其他新功能的测试。”我不是很清楚你想要达到什么目的。 - Csaba Benko
1个回答

80

如果您不关心保留develop分支,请只检出develop并将其重置为您或您的团队命名的默认分支mastermain

# make sure the default branch is up to date before you do this
git checkout develop
git reset --hard master # replace with your name if it differs
git push -f # force push the branch

通常每天早上都会为一个integration分支执行此操作,这样夜间的集成始终基于主分支。


这是否也会重置远程分支? - Giraldi
3
@Giraldi 当你执行 git push 命令时,实际上是在更新远程代码库。 - chesscov77

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接