将 DEVELOP 重置为 MASTER 但保留旧的开发

Posted

技术标签:

【中文标题】将 DEVELOP 重置为 MASTER 但保留旧的开发【英文标题】:Reset DEVELOP to MASTER but keep the old develop 【发布时间】:2021-12-25 12:08:17 【问题描述】:

我们的开发分支太乱了,我们有一段时间没有使用它了,所以所有的功能都来自于前一段时间从 master 创建的一个新分支。

我希望这个我们称之为“bugfix”的分支成为我们的新开发,这样我们就可以回到旧的 git 流程中。

问题是我们仍然有一些东西在开发中,我正在逐渐挑选和提交作为新功能,所以我必须将旧的开发保留在某个地方,提前一个分支。

我该怎么做?我正在考虑从“develop”创建一个名为“develop-old”的分支并将其推送到原点,然后将“develop”重置为“bugfix”

这行得通吗?有更好的方法吗?

【问题讨论】:

【参考方案1】:

我正在考虑从“develop”创建一个名为“develop-old”的分支并将其推送到原点,然后将“develop”重置为“bugfix”这样行吗?

是的。


git 中的分支只是指向提交的指针。它没有永久存在,也没有除名称以外的元数据,因此您可以随意创建、删除和重命名分支。

要创建新分支,只需运行 git branch develop-old developgit push origin develop-old。然后你可以删除develop并重命名bugfix;或重置develop 指向与bugfix 相同的提交,然后删除bugfix

【讨论】:

以上是关于将 DEVELOP 重置为 MASTER 但保留旧的开发的主要内容,如果未能解决你的问题,请参考以下文章

在保留提交的同时将 master 恢复为旧提交

git 一个分支完全覆盖另一个分支

git 将推送的文件重置为之前的提交。

github的版本控制master和branch develop

git代码覆盖

只获取已经合并为master / develop的远程分支