繁体   English   中英

将 PR 重新设置为基于 master 的单个提交

[英]rebase a PR to a single commit on top of master

我是 Git 和 GitHub 的新手。 我为一个 repo 创建了一个 PR,之后我在 PR 中做了一些更多的编辑。 “此 PR 中 6 次提交中有 5 次是合并提交或修复提交。能否请您将此 PR 重新设置为在 master 之上的单个提交?” 回购维护者要求我执行此操作,但我真的不知道如何将 PR 中的所有 6 次提交转换为在 master 之上的单个提交以及“在 master 之上提交”的含义是什么?

我不知道你如何布置你的工作历史的细节,但是,假设你开始的分支和你的分支之间的差异是你需要提交的工作,仅此而已,我会做的是:我会找出您的分支和“主”共享的最后一个修订版本,然后我将创建一个包含所有差异的单一修订版本。 根据您的方便进行调整:

git checkout my-branch
git merge-base my-branch origin/master # this will output a revision ID
git reset --soft the-id-provided-before # set branch pointer on that revision
git commit -m "This is my work in a single revision"
git push whatever-repo my-branch

然后,您可以在“清理”并创建单个修订后从该修订创建 PR。

展望未来,如果您打算与其他人分享您的工作,我会告诉您学习如何使用 rebase 和cherry-pick 来避免合并。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM