如何将最近(但不是最新)的内容移至新分支

安迪

即我怎么去


硕士:ABCDEFG

主:ABEFG 
           \
功能:CD

显然,现在它很清楚,CD应该位于功能分支中,因为该更改现在被延迟了。

这是一个微妙的不同问题我见过的人在这里这里

R0MANARMY

该答案假设您尚未推动master或您是唯一在项目上工作的人(在这种情况下,这并不重要)。如果您推送了master,而其他人则撤消了您的更改,则需要与他们进行沟通,以确保他们适当地更新了他们的存储库。

                                  # Assuming you're on master
git branch <feature> <D>          # Create a branch named <feature> at commit <D>
git rebase --onto <B> <D> master  # Transplant branch

Git rebase文档对功能做了很好的图形化说明rebase --onto


如果您想rebase完全避免,您应该可以

git branch <feature> <D>          # Create a branch named <feature> at commit <D>
git revert <D>                    # undo D
git revert <C>                    # undo C

这将导致这样的历史

A-B-C-D-E-F-G-!D-!C
      ^           ^
   feature      master

检出master的任何人都将看到代码,就像从未发生过提交CD一样,您在历史记录中只会进行几次还原这是从已推送的分支中备份更改的首选方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Git将最新提交移至新分支

如何将工作移至新分支并删除所有提交历史记录?

如何将分支的内容复制到新的本地分支?

如何将Portlet移至内容的#content区域?

如何将加密的/ home移至新计算机?

如何将/ home移至新分区fedora

如何将旧提交移至git中的另一个分支?

如何将未推送的提交代码移至另一个分支?

如何将Git提交移至另一个分支并在原始分支中将其删除?

在原始/母版之前,如何将提交放入新分支?

IntelliJ:如何将 GIT 分支作为新的 master?

如何将仓库的分支放入新的存储库中?

如何将更改提交到新分支

如何将分离的头合并到新分支然后新分支成为主?

如何将AvalonDock可锚定窗格选项卡移至顶部而不是底部?

如何将分支从Github克隆到Google Cloud Source Repository中的新分支?

如何将GitHub上的远程分支复制到新的远程分支?

如何将现有分支名称重新用作新分支?

我如何将工作从master分支克隆到新分支?

如何将分支分为功能分支

如何将LAMP设置移至新的Ubuntu服务器?

如何将现有窗口移至新选项卡?

如何将一个分支从分支的头提交到新分支中,并且合并后又不丢弃它们?

如何将主人移至HEAD?

如何将Ubuntu移至SSD

如何将UIManagedDocument移至iCloud

如何将一个分支的所有内容合并到另一个分支?

Git:如何从不是当前的分支创建新分支?

如何使用 git svn 克隆多个分支,但不是全部?