git - 我可以将推送的提交从一个分支移动到另一个现有分支吗?

标签 git git-branch

我有 3 个分支:developfeature-1feature-2。我正在处理 feature-1,然后切换到 feature-2。然后我完成了 feature-2 的工作,提交并推送到 repo,然后为该功能创建了一个 merge 请求。然后我看到 feature-2 包含一些应该在 feature-1 中的提交。我能否在本地将它们从 feature-2 移动到 feature-1,然后在 repo 中反射(reflect)相同的移动?

最佳答案

git cherry-pick <commit-id>是你亲爱的 friend 。

  1. 继续 feature-2 分支
  2. 复制commit-id(s)你想从 feature-2 移动至 feature-1
  3. 切换到 feature-1 分支
  4. 现在挑选您在上面第 2 步中复制的所有提交。

    git cherry-pick <commit-id>

    如果您有多个提交要移动到 feature-1然后将所有提交 ID 按提交日期/时间的顺序排列。

    例如:

    git cherry-pick <commit-id-1> <commit-id-2> . . <commit-id-n>

关于git - 我可以将推送的提交从一个分支移动到另一个现有分支吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50391577/

相关文章:

gitlab 重定向推送/获取/克隆以登录

git - 镜像git分支

git - 获取 repo 的最新标签

bash - 在 IBM i 上将 Composer 与私有(private) VCS 存储库一起使用时出现 Git 依赖性错误

git - git checkout --track origin/branch 和 git checkout -b branch origin/branch 的区别

git - 推送和 merge 之间的区别

git - 使用 `git fetch --all` 跳过将一些分支/标签复制到本地 Git

git - 哪个是 Git for windows 的官方 GUI?

git - 如何在 Android Studio 中 check out 旧的 git 提交?

windows - Windows 上的 Git : "merging" 2 directories with the same name but different case