如何为特定提交创建拉取请求

时间:2019-08-16 13:00:29

标签: git cherry-pick

我正在尝试为特定提交创建请求请求。我已经执行了以下命令

git push upstream issue-430 

我想创建一个特定的提交请求。 我试图从问题430创建另一个分支,然后樱桃选择了特定的提交,但它给出了错误

error: your local changes would be overwritten by cherry-pick.
hint: commit your changes or stash them to proceed.
fatal: cherry-pick failed

但是我已经完成了所有本地更改。

1 个答案:

答案 0 :(得分:0)

  

我试图从issue-430创建另一个分支

这是一个问题-您从issue-430创建了一个分支(假设它称为newbranch),这意味着在issue-430中进行的所有提交都已经在new-branch中。当您分支到另一个分支时,几乎就像在创建分支所在位置的副本一样(并不是因为它实际上只是在创建指向同一哈希的另一个指针,但是为了理解起见,我们将继续这样做)。因此,您尝试将提交从issue-430挑选到new-branch上,但是它们已经存在了,因为new-branchissue-430相同,因此您无法提交任何内容因为git表示没有更改要应用。

您可能还已经修改了运行git status时显示的修改,并且git表示,如果您尝试从樱桃选择的提交中应用更改,这些修改的文件将被覆盖。

因此,假设您想通过master的特定提交对issue-430进行PR。首先,请确保您没有任何相关的未提交的更改(您可以git stash暂时将其推迟)

先结帐master,先结帐pr-branch,然后说分支pr-branch。然后,选择一个提交到pr-branch上。然后,将{{1}}推入您的上游仓库。