还原Git分支以在新代码之前针对原始分支发出干净的请求

时间:2018-07-23 23:39:58

标签: git

我正在寻找一种干净的方法来对在hash_xxx之前已进行代码审查的Git分支发出拉取请求,但是此功能分支是在代码审查之前提交的。

我有一个git功能分支abc,它与上游abc分支同步。但是,abc分支仅在哈希编号hash_xxx之前的一次提交之前进行过审核。

我想知道获得以下条件的步骤:

  1. abc复制到另一个新分支xyz,以与当前abc功能分支完全匹配

  2. abc上的更改撤回到hash_xxx,而无需手动解决xyz上的冲突

  3. 为即将到来的请求请求更新两个upsteam分支。

目标是向已还原的xyz上发出abc的提取请求。

我要避免的问题是,xyz上需要发生一次合并,以针对abc进行拉动。当进行这种合并时,将撤消更改,这些更改必须通过粘贴保存的副本并重新提交整个内容来进行。

哪些步骤可以实现此目标?

1 个答案:

答案 0 :(得分:0)

  

将abc复制到另一个新分支xyz

git checkout abc
git checkout -b xyz
git push -u origin xyz
  

将abc上的更改撤回hash_xxx

git checkout abc
git reset --hard sha1
git push --force

也就是说:如果您是唯一从事abc工作的人。否则,您需要警告其他用户,他们将必须在提取后将abc重置为新的origin/abc

您现在可以从xyz到abc建立PR。