我创建了一个github fork并做了一些更改,然后创建了一个pull请求。在一些修改之后,我做了一些额外的修改,重新调整了fork(然后也是本地副本),然后提交并再次推送它。
现在,我的请求也包含了很多其他人的更改:
https://github.com/pandas-dev/pandas/pull/14505/files
我做错了什么?我该怎么办?我只更改了3个文件(pandas/io/json.py、pandas/io/tests/json/test_json_norm.py和doc/source/whatsnew/v0.18.1.txt)(在这里,我还解决了重新定位后的一些冲突)。
如有任何建议,我们将不胜感激。我用的是小妖精和乌龟。
最佳答案
我做错了什么?
您直接从主分支创建了PR(它应该反映upstream/master
分支,而不包括其他更改)
我该怎么解决
确保您有一个名为upstream
的远程引用原始repo(您分叉的那个)
git remote -v
# if needed
git remote add upstream /url/original/repo
然后从
upstream/master
创建分支git fetch upstream
git checkout -b myPR upstream/master
最后,cherry选择表示更改的提交
git cherry-pick myFirstCommit..myCurrentCommit
并从该分支创建一个pr(稍后您可以像以前那样更新,但在
upstream/master
上有一个rebase)After discussion,缺少的步骤是
git fetch upstream
:op只与master
或origin/master
一起工作,但这些并不重要:在进行pr时,只有upstream/master
(原始repo的主要分支)才是重要的,并且您的pr必须在其上重新调整。