git - 如何在不调用 Github API 的情况下获取 GitBash 中特定分支的现有 Pull Request ID 和 Url?
问题描述
我需要找到问题中描述的确切情况的解决方案。
我只有一个功能分支 ID,我需要在 GitBash(2.20.1) 或终端上获取拉取请求 ID 或 Url,而无需调用 Github API。
我已经尝试过这个,但它并不适用于每个分支或总是,不知道为什么。
git ls-remote origin 'pull/*/head' | grep -F -f <(git rev-parse HEAD) | awk -F'/' '{print $3}'
解决方案
但它并不适用于每个分支或总是,
那是因为:
- 您的分支根本不是 GitHub PR 分支的一部分
- 或者您的分支有新的本地提交尚未推送到您的 PR 分支,这意味着(您的本地 HEAD 提交的)grep 只能失败。
尝试检查 PR 分支 HEAD 是否是您当前分支历史记录的一部分,而不是 grepping。
请参阅“如何列出包含给定提交的分支? ”
git fetch origin +refs/pull/*/head:refs/remotes/origin/pr/*
git branch -a --contains <commit>
如果您有任何 /pull/
分支机构,您将获得您想要的 PR。
推荐阅读
- angular - angular 7 build app - 用真实网址替换资产网址
- swift - 如何将@IBAction Func 引用到几个按钮插座
- javascript - 如何在 json 对象中使用此类型键?
- java - 调用 @Repository.save() 后,延迟加载的 @ManyToOne 列被覆盖为 null
- .net - MongoDB .Net - 过滤数组子项中的项目
- python - 一次创建多个相同大小的numpy数组
- python - Keras 中的自定义 Hebbian 层实现 - 输入/输出昏暗和横向节点连接
- reactjs - 反应关键道具不是必须的
- ios - 无法将“数据”类型的值转换为预期的“数据”类型
- javascript - 如何手动触发 webpack 开发服务器的监视/重新加载?