如何基于提交 ID 或上一个合并请求找到合并请求 ID?我想在 CURL 请求中包含合并请求 ID,但我无法使用 git log
命令找到该 ID。
http://10.10.10.10/api/v4/projects/9/merge_requests/67/notes
如何基于提交 ID 或上一个合并请求找到合并请求 ID?我想在 CURL 请求中包含合并请求 ID,但我无法使用 git log
命令找到该 ID。
http://10.10.10.10/api/v4/projects/9/merge_requests/67/notes
git log
获取提交ID,同时可能会有多个合并请求,我可能会选择错误的合并请求。如果我可以使用提交ID搜索,则可以找到正确的合并请求。 - user630702Gitlab
存储了除分支和标签之外的额外 merge-requests/...
引用,这些引用指向合并请求提交。您可以通过运行 git ls-remote
查看这些引用:
$ git ls-remote origin
ed228a67a... HEAD
7215f3432... refs/heads/cache
4ed228a67... refs/heads/master
...
d2cc93ae3... refs/merge-requests/1023/head # current commit for MR #1023
a888aabaf... refs/merge-requests/1023/merge
...
您可以将这些引用拉到本地仓库,例如通过更新配置中的refspec(改编自this gist):
[remote "origin"]
url = git@github.com:joyent/node.git
fetch = +refs/heads/*:refs/remotes/origin/*
fetch = +refs/merge-requests/*/head:refs/remotes/origin/mr/* # <- add this line
git for-each-ref refs/remotes/origin/mr --points-at <commit-ish>