如何只对一次更改提出拉取请求?

Mat*_*xon 7 git github pull-request

我几乎没有关于git或github的线索,我不想要一个线索.但我碰巧在这里有一个开源项目的两行错误修正.本着合作的精神,无论如何,我想回馈它.如果它不会花费我太多的痛苦.

所以,很久以前我分叉了存储库,然后偶尔做了一些我自己的修改,然后最近才做了这个两行错误修正.一切都已经检查到主分支并推回原点.现在我想对两行错误修正提出拉取请求.似乎github没有提供任何此类设施.

回想起来,我可能应该在制作我的两行错误修复之前完成一个完整的项目分支,但是a)这两行代码的管理上的痛苦太多了b)我不知道我想要贡献我编写它时修复了错误.无论如何,现在已经太晚了.

我可以创建一个新分支,但仍然包含所有其他垃圾更改.所以它不会让我到处都是.我想从上游创建一个新的分支,排除我所有的本地更改,然后重做这一个更改.但除了制作一个全新的分叉之外,我无法看到任何方法,而且我不想要一个全新的分叉.

现在我最好的解决方案就是放弃:代码现在适用于我,这不是我的问题.有人有更好的计划吗?

Cha*_*esB 7

最简单的方法是

  1. 使用当前更改设置分支,然后返回上游分支(您的提交必须基于上游存储库)
  2. 为pull请求创建一个新分支
  3. 拿起有错误修复的提交
  4. 推送并创建拉取请求

这使

git branch my-changes
git stash #just in case you have uncommitted changes
git checkout -b bugfix upstream/master
git cherry-pick <bugfix-commit-sha>
git push --set-upstream origin bugfix
Run Code Online (Sandbox Code Playgroud)

upstream原来的分叉回购在哪里