git - 如何使用 GitLab API 查找文件的提交哈希值?

标签 git api hash gitlab git-commit

我正在尝试找出存储库中文件的提交哈希值。不同的文件被不同的提交修改。

我在 GitLab 网络界面上看到此信息: File's commit hash vs master's commit hash

但是我如何使用 GitLab API 获取这些信息?我尝试这样做:

GET /projects/:id/repository/files

https://gitlab_server/api/v3/projects/1234/repository/files?file_path=test/file2.tconf&ref=master

但响应中的 commit_id 与 HEAD 的哈希 0f05a8e4bf45942b1189fce923184129821845f1 匹配,而不是上面屏幕截图中看到的。

{
  "file_name": "file2.tconf",
  "file_path": "test/file2.tconf",
  "size"     : 44,
  "encoding" : "base64",
  "content"  : "...",
  "ref"      : "master",
  "blob_id"  : "50450759d2b0694b044ed3d7eaf93c2c98dacbba",
  "commit_id": "0f05a8e4bf45942b1189fce923184129821845f1"
}

有什么线索吗?

最佳答案

last-commit-id 现在存在并提供您所要求的:修改该特定文件的最后一次提交。

参见 GitLab's get-file-from-repository API

关于git - 如何使用 GitLab API 查找文件的提交哈希值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33401029/

相关文章:

linux - 在 bash 中使用 EOF 获取 FOR 的输出

c++ - 为什么 fstream 不能在 Linux 中写入文件?

javascript - Reddit 搜索 API 网址?

ruby - HashMap 方法

json - 使用 Perl 循环遍历 JSON 数据并打印出一个字段(不是 HASH 引用)

Git - 如何在克隆后自动忽略文件?

git - 错误: RPC failed; HTTP 502 curl 22 The requested URL returned error: 502 Bad Gateway fatal

javascript - Nodegit:如何修改文件并推送更改?

javascript - BINANCE API - 如何使用用户数据流获取账户信息

c# - 计算大文件的Md5 Hash