所以我首先fork了一个仓库,然后对该forked 仓库进行了提交。随后我打开了一个pull request,该请求列出了我想要进行的所有更改。
在审查我的pull request之后,仓库所有者希望我在接受之前进行一些修改。我已经在我的fork中进行了这些更改,现在我该如何使用这些更改更新pull request(或者这不是我应该处理它的方式)?
所以我首先fork了一个仓库,然后对该forked 仓库进行了提交。随后我打开了一个pull request,该请求列出了我想要进行的所有更改。
在审查我的pull request之后,仓库所有者希望我在接受之前进行一些修改。我已经在我的fork中进行了这些更改,现在我该如何使用这些更改更新pull request(或者这不是我应该处理它的方式)?
你做得很正确。拉取请求将自动更新。步骤如下:
拉取请求将自动将新提交添加到PR的“提交”选项卡中。
在GitHub上更新拉取请求就像将所需更改提交到使用拉取请求的现有分支一样简单,但通常也希望将更改压缩为一个提交:
更新 GitHub 拉取请求很容易:只需将所需更改提交到已用于拉取请求的现有分支即可。但是通常还需要把这些更改压缩成单个提交:
git checkout yourbranch
git rebase -i origin/master
# Edit command names accordingly
pick 1fc6c95 My pull request
squash 6b2481b Hack hack - will be discarded
squash dd1475d Also discarded
git push -f origin yourbranch
...现在拉取请求只包含一个提交。
关于变基的相关链接:
我是按照以下步骤完成的:
git reset --hard <拉取请求的提交关键字>
git add
git commit --amend
git push -f origin <拉取请求的远程分支名称>