只在GitHub上发送一个pull请求,仅用于最新的提交

我在github上分配了一个项目,并且成功地对我的本地主人进行了修改,并在github上推动起源。 我想发送一个拉取请求,但只想包含最后一次提交。 github.com上的pull request UI显示了最后9次提交,我不知道如何过滤掉。

我试图了解我是否应该创建一个新的本地分支,检查并以某种方式重置或重置上游? 然后应用我的最后一次提交从我的主人身份证到新的本地分公司,并将其用于拉请求?

我试图理解正确的概念并找出正确的命令行来完成我所需要的。


你需要基本上创建一个新的分支和樱桃选择你想要添加到它的提交。

注意:在checkout / cherry-pick命令之前,你可能需要这些

git remote add upstream <git repository>

git remote update

git checkout -b <new-branch-name> upstream/master

git cherry-pick <SHA hash of commit>

git push origin <new-branch-name>

之后,你会在github上看到<new-branch-name>分支,切换到它,并可以提交你想要的更改的请求。


从最新的提交开始创建一个新的分支,该分支也位于原始库中:

git branch new-branch origin/master
git checkout new-branch

然后使用git cherry-pick来获得你想要的pull request的单个提交。 如果具有此提交的分支称为feature并且您想要的提交是此分支中的最新提交,那么这将是

git cherry-pick feature

假设这个补丁适用于没有冲突,你现在有一个分支,你可以做你的拉请求。

第二步,您现在需要决定如何处理您的feature分支。 如果你还没有在这个分支上发布你的改变,最好的过程可能是重新分支这个分支在新分支(并删除最后一次提交,如果这不是由git rebase自动完成的话)。


我最终陷入了一种分叉状态,并希望向原始项目提交请求的情况。

我有:

  • orignal_project
  • forked_project(从SHA:9685770的原始项目创建)
  • my_fork(从SHA:207e29b的分叉项目创建)
  • 在我的fork(SHA:b67627b)中提交,我想提交回原始项目
  • 为此,我:

  • 从原来的项目分叉的SHA创建了一个新的分支
  • 从原来的项目中拉出所有
  • 樱桃选择了我想提交的提交请求
  • 把它推到github上
  • git命令是这样的:

  • git分支my-feature-request 9685770
  • git checkout my-feature-request
  • git pull https://github.com/original_project/original_project.git
  • git cherry-pick b67627b
  • git push origin my-feature-request
  • 然后,我选择了我的功能请求作为我的请求到原始项目的分支。

    链接地址: http://www.djcxy.com/p/45183.html

    上一篇: Send a pull request on GitHub for only latest commit

    下一篇: Are git forks actually git clones?