我 fork 了一个公共 Github 存储库,将 fork 克隆到本地 repo,进行了一些更改,并将它们推送到我的 fork 的 master 分支。然后我打开了一个拉取请求,它被合并到原始仓库中。
现在我想做下一个改变。我在本地执行它们,推送到我的 fork 的主分支并尝试打开另一个拉取请求。Github 将新更改和之前合并的更改都显示为属于这个新的拉取请求。显然,我只想列出新的更改。
我做错了什么,我该如何做对?
我 fork 了一个公共 Github 存储库,将 fork 克隆到本地 repo,进行了一些更改,并将它们推送到我的 fork 的 master 分支。然后我打开了一个拉取请求,它被合并到原始仓库中。
现在我想做下一个改变。我在本地执行它们,推送到我的 fork 的主分支并尝试打开另一个拉取请求。Github 将新更改和之前合并的更改都显示为属于这个新的拉取请求。显然,我只想列出新的更改。
我做错了什么,我该如何做对?
将它们推送到我 fork 的 master 分支
这会使您的下一个拉取请求难以合并。你现在应该做的是
git checkout master
git pull --rebase upstream master
upstream
“原始”存储库在哪里,以使您的master
分支与其master
. rebase
可能需要手动编辑。现在,要提交拉取请求,请从 master分支:
git checkout -b new-branch
# edit edit edit
git push origin new-branch
并从您的新分支提交拉取请求。这样,您的master
分支与原始存储库保持同步。
如果您仍然有提交master
不在上游master
,请确保将它们放在单独的分支中,然后git reset --hard
是master
分支。