git - pull 请求已 merge 、关闭,然后还原 - 现在无法再次 pull 分支

标签 git github merge pull-request

GitHub 在几次操作后似乎有点迷路了——我当然是……

所以,故事是这样的:
我是 git 的新手,也是 github 的新手。在我的存储库中,我有一个分支(我们称它为 B),我在其中处理一项功能。

  1. 为了让事情变得透明,我创建了一个 pull 请求。
  2. 我的合作者(完整的 git/github 新手)点击 merge pull 请求(可能只是探索界面)。
  3. 该功能尚未准备就绪,因此我恢复了 merge 。

现在我想继续我在分支 B 上的工作,稍后将其 merge ,但是尽管分支有 800 多行不同,但 GitHub 显示只有一行不同(一次提交)。

这可能是因为我试图在还原更改后重新打开旧的 pull 请求。我确实重新打开了 pull 请求,但 merge 选项不再可用。我尝试关闭或打开旧的 pull 请求并创建一个新的 pull 请求(将分支 B pull 到 master)但这只显示了一个提交,就好像所有其他的都被吃光了一样通过原始 pull 请求(尽管已恢复)。但是,如果我尝试将 master pull 到 B - 它会显示所有差异(大约 +800/-300 差异)。

我想回到分支 B 上安静地工作 - 我想回到 B 可以自动 merge 的那一刻(现在不是可能是因为新的 pull 请求显示 Bmaster 之间只有一个微小的差异,而实际差异是不同的)。最简单的方法是什么?

最佳答案

与其尝试摆弄 B,不如简单地:

  • 创建一个新的分支C,
  • B 的先前提交开始( merge 很容易)
  • cherry-pick 从 B 中你需要返回 C 的任何提交

然后,如果需要,您可以从 C 进行 PR。

关于git - pull 请求已 merge 、关闭,然后还原 - 现在无法再次 pull 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25484945/

相关文章:

git - 在不丢失更改的情况下 merge 上游的正确方法是什么?

python - 按时间合并 pandas 数据框和另一列

python - 基于 bool 函数合并 Pandas Dataframe

git - 回滚 Git merge

git - 如何在不使用 reset 的情况下撤消 git 中的快进 merge

git - 查询有关以窗口用户身份使用 git 和 VS2010 的问题

python - pandas merge_asof keys must be sorted 排序后出现错误

eclipse - 如何忽略 Git 上的 IDE 设置?

Github for Windows 将 repo 置于 "rebasing"状态,但显示为 "failed to sync this branch"

git - 如何让 travis-ci 使用本地 git 分支而不是特定的提交?