如何避免PR中的混乱git commit

时间:2019-12-09 18:04:09

标签: git github

我已经学到了足够的git,基本上可以通过,并且我想了解是什么原因造成了所有这些提交的原因,这些提交本来是3提交公关的。 (我知道我可以采用更好的工作流程将3次提交减少到1次,但是对于这个问题,我们将其搁置一旁。)

这是我在bioconda-recipes项目的一个分支上开始工作的过程。

git checkout master
git pull upstream master
git checkout -b mybranch

然后我执行我的更改(并输入3次提交)。但是,当我提交PR时,从9月开始有很多合并提交(我最近在12月做了所有当前工作)。我不记得9月份的情况。我可能在其他分支机构工作过,这也导致了PR。 PR差异中显示的更改仅反映了我最近所做的更改。我不知道是什么原因导致所有这些合并显示在提交历史记录中,我想知道是什么原因导致了这些合并。他们是9月的一堆git pull upstream master电话吗?为什么所有这些都出现在PR中?

enter image description here

或者,我应该做些什么来从0次提交开始清理工作,例如上游主服务器上的git rebasegit revert

1 个答案:

答案 0 :(得分:0)

最好将分支机构重新建立到 upstream/master 上,以确保PR仅包含三个新提交:

git remote add upstream /url/original/repo
git fetch upstream
git switch mybranch
git rebase --onto upstream/master master mybranch
git push --force

想法是从原始存储库的最新状态(“ upstream”而不是从您的fork(“ origin”)进行PR。

然后检查您的PR状态(在推送新的mybranch记录之后)

对于下一个PR,只需从upstream/master开始,以确保仅包括新的PR提交。