将提交移动到另一个分支



有没有机会从:

A (master)

B - C - D (test)

自:

A - C - D (master)

B (test)

例如(.txt(:

Commit A: A
Commit B: AB
Commit C: ABC
Commit D: ABCD

但我希望它是

Commit A: A
Commit B: AB
Commit C: AC
Commit D: ACD

正是你想做的:

  1. 切换到主分支:
    git checkout master
  2. 新分支 C:
    git checkout -b C_BRANCH
  3. 获取 C 提交:
    git cherry-pick C
  4. 切换到主:
    git checkout master
  5. 获取 D 提交:
    git cherry-pick D
  6. 合并光盘:
    git merge -m"D" C_BRANCH
  7. 切换到测试分支
    git checkout test
  8. 重置分支以提交 B
    git reset --hard B
  9. 删除未使用的分支
    git branch -d C_BRANCH

最新更新