Github:按文件将PR拆分为两个PR

Ell*_*old 7 git github

这是一个在 Perforce 中微不足道的操作,在 Git 中似乎几乎不可能,但让我们看看。情况:拉取请求有六个文件,将它们命名为:A、B、C、X、Y 和 Z。这些都没有合并到 master,但本地分支已推送到远程(Github,如果重要的话)。

有很多很多提交涉及所有这些文件。有些提交只涉及一个文件。有些触及所有六个。

我想创建两个新的 PR。一个 PR 包含文件 A、B 和 C,其中包含所有提交的所有更改。另一个 PR 包含 X、Y 和 Z,以及所有提交对这些文件的所有更改。我不关心提交历史记录或分支会发生什么。所有提交都将在合并之前被压缩,并且所有工作分支将被删除。

Omk*_*jam 9

我的情况和你类似,这就是我所做的:-

  1. 检查你的功能分支。
  2. 考虑到您的 master 分支名为main,请运行git reset --soft main。这将删除您功能分支中的所有提交。但是您在这些提交中所做的所有更改都将保留为未暂存的文件。
  3. 现在,创建一个新分支。暂存文件 A、B 和 C。提交、推送并创建新的 PR。此 PR 将仅包含文件 A、B 和 C 的更改。
  4. 再次检查您的原始功能分支。再次创建一个新分支。这次,暂存文件 X、Y 和 Z。提交、推送并创建新的 PR。此 PR 将仅包含文件 X、Y 和 Z 的更改。
  5. 关闭您的原始 PR(包含所有 6 个文件的更改),因为不再需要它,并要求审阅者审阅您创建的 2 个新 PR。


Jul*_*ian 0

解决这个问题的一种方法是:

  1. 压扁所有
  2. 从当前分支创建一个新分支
  3. 修改提交并删除文件 X、Y 和 Z 的更改
  4. 强制推送并创建第二个 PR
  5. 回到你的另一个分支
  6. 修改提交并删除文件 A、B 和 C 的更改
  7. 强制推送更新您当前的 PR