git - 将特定的 git commit 从 master 移动到分支

标签 git tortoisegit

我有一个特定的提交被推送到 origin/master 但还没有准备好。它应该进入一个单独的现有功能分支,最终将 merge 到 master 中。我怎样才能从 master 中提取提交并将其移动到功能分支中?

这是我在远程分支中的内容:

          a     B     c     d
master -  o --- o --- o --- o -->
                   \
newbranch -         - o --- o -->
                      p     q

错误的提交 B 需要移动到 newbranch:

          a     c     d
master -  o --- o --- o -->
             \
newbranch -   - o --- o --- o -->
                B     p     q

这有可能实现吗?

最佳答案

如果您已经推送了提交,那么任何重写现有图的尝试都需要强制推送,这会让您团队的其他成员感到难过。

因此,最好的解决方案是简单地提交一个恢复到master:

git checkout master
git revert B   # Or whatever the commit hash for B is

关于git - 将特定的 git commit 从 master 移动到分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23848089/

相关文章:

git - 当我得到 "TortoiseMerge cannot be used without a base"时我该怎么办?

git revert - git 询问 parent1 或 parent2

Git rebase 因冲突而失败,但没有冲突

branch - 如何删除已经与 TortoiseGit 合并的本地 Git 分支?

linux - git send-mail 发送邮件失败

git - 我可以从另一个加载一个 .gitconfig 文件吗?

svn - git svn : password for svn is not stored

git - 'delete mode 100644' 在 git 提交中意味着什么?

node.js - 如何在 package.json 文件中添加 git repo

git - 如何从 Git 导出所有更改/添加的文件?