本文主要是介绍github在pull request时只提交指定commit的方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我们在fork了别人的仓库之后,如果进行了修改,可以pull request到原仓库,但是如果你进行了很多的修改,并有很多的commit,那你在pull request的时候,同时也会把之前pull request的commit一块带上(很可能影响不大),不过还是介绍一下每次pull request某个指定的commit。
假设你的远程仓库为origin,原仓库即上游仓库为upstream。
- 修改代码,比如补齐了某些标点符号在
git add .
- 提交
git commit -m "make up punctuation"
- 推到远程仓库
git push
- 复制刚才那个提交的commit id(蓝色框内)
git log
注意:上面的步骤都是在master分支上操作的
-
创建分支,假设名字叫做patch1,执行之后会切换到这个分支
git checkout -b patch1 upstream/master
-
用cherry-pick选择刚才的commit,后面的一串就是刚才复制的commit id
git cherry-pick d689c083ac889b1cd09b03857502bb7508ce2cb8
-
将这个分支推送到远程
git push origin patch1
-
然后去到github.com的自己的仓库中去,找到branch
-
最后找到我们之前创建的patch1分支,然后把它pull request即可
-
如果要想删除刚才创建的分支patch1,则:
git branch -D patch1
这样会强制删除掉patch1分支。上述操作需要在master分支上进行,因为不支持在某个分支上删除自己。
注意:上述的删除操作只会删除本地的patch1分支,而自己远程仓库的patch1的分支依然存在,删除方式为:
git push origin :patch1
如有错误,望大佬指出
这篇关于github在pull request时只提交指定commit的方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!