【发布时间】:2014-08-11 10:24:25
【问题描述】:
当您提交新的拉取请求时,GitHub 会自动创建两个引用:
refs/pull/<number>/head指向添加到拉取请求的最后一次提交refs/pull/<number>/master指向 GitHub 创建的提交,用于将当前主节点与当前拉取请求头合并
只有这些,如git ls-remote所示:只有head和master。
我想找到像 refs/pull/<number>/parent 这样指向此拉取请求的特定父提交的内容。
到目前为止我的解决方案:下载特殊的 URL <github>/pull/934.patch,grep 为第一个 SHA 这个文件的内容,然后使用 git 找到这个提交的父级。有没有办法在不访问网络的情况下做到这一点?
【问题讨论】:
-
当你说“父提交”时,你是指两个分支之间的共同祖先吗?
-
除非你的 pull request 很奇怪,否则它将是 master 的一个分支。所以通过父提交,我的意思是我想在 master 中找到这个 PR 建立在上面的提交。我想那是共同的祖先,但如果你只是说共同的祖先,那么如果 PR 一直在合并到 master 中,你也会得到一些其他的项目
-
...对吗?我很想被证明是错误的:)
-
嗨哈米,您实际上不应该将解决方案添加回您的问题,解决方案进入答案,或为您的问题添加评论。此外,拉取请求 are not specific to GitHub,您可以使用 Git 本身使用
git request-pull创建拉取请求。 -
糟糕,已删除。有趣的链接!