我已经创建了拉取请求,并且已将其合并到错误的分支。我怎样才能还原呢?
到目前为止,我一直在想看看那里,我能够硬重置目标分支......但是,origin
存储库中的pull请求怎么样?
我使用Bitbucket并且我已经从SourceTree创建了拉取请求(打开Bitbucket页面)。
我正在处理三个分支机构:master
,dev
和create-alias
。 create-alias
来自dev
和dev
来自master
:master -> dev -> create-alias
。问题是我从create-alias
发出了拉取请求,我确实将其合并到master
而不是dev
。
我现在正在create-alias
分支机构工作。 create-alias
上的最后一次提交是6ee20f9
,master
上的合并提交是be36f72
。
你能否告诉我一步一步将其归还给谁?
到目前为止,我已经能够弄清楚:
master
。6ee20f9
。create-alias
并继续工作。不是吗?
答案 0 :(得分:63)
不幸的是,没有" Revert Pull Request"截至撰写本文时,Bitbucket上的功能,但feature request exists for it。
注意:在继续操作之前,请确保您的工作副本干净,没有未提交或未按下的更改。
所以,你必须在Git中恢复合并。首先,找到合并提交的SHA哈希。
在命令行中,这是:
http://site/api/members/myAccount/update
http://site/api/members/myAccount/get/12345
http://site/api/members/contacts/getByOwnerId/12345
然后,我们恢复合并提交并推送它:
git checkout <branch>
git pull
git log
在SourceTree中,首先检查相关分支,然后拉。在日志窗口中找到合并提交,然后右键单击它,然后单击将SHA-1复制到剪贴板... 。然后转到操作 - &gt;在终端中打开。终端打开后,键入:
git revert -m 1 <SHA-1>
git push
不幸的是,SourceTree没有办法简单地右键单击并还原合并,只有feature request exists for it。
答案 1 :(得分:9)
Bitbucket现在有&#39; Merge Pull Request&#39;功能发布。 请关注this link了解详情。
答案 2 :(得分:8)