如何使用 Java 从 gitlab 存储库分支检索文件?
How do I retrieve a file from the gitlab repository branch using Java?
这是我的 GitLab 结构
- 项目 X
- 知识库 J
- 分支机构 1
- 文件A
- 文件B
- 分支机构 2
- 文件 C
- 文件D
我想使用 Java 代码从 Branches 1 Repository J 中检索文件 A。有没有办法做到这一点?一直在找这个方法,没找到
您可以使用 Repository Files API:
从存储库中检索文件
GITLAB="gitlab.example.com"
PROJECT_ID=13083
FILE_PATH="/path/to/filename.java"
BRANCH_NAME="main"
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://${GITLAB}/api/v4/projects/${PROJECT_ID}/repository/files/${FILE_PATH}?ref=${BRANCH_NAME}"
大部分内容都非常清楚,但您可以从项目 API 响应中或从 Gitlab 中项目名称下方的项目页面中获取项目 ID。文件路径应该是从项目根目录到文件的路径。 ref
参数可以是分支名称、标记名称或提交 sha。
这是我的 GitLab 结构
- 项目 X
- 知识库 J
- 分支机构 1
- 文件A
- 文件B
- 分支机构 2
- 文件 C
- 文件D
- 分支机构 1
- 知识库 J
我想使用 Java 代码从 Branches 1 Repository J 中检索文件 A。有没有办法做到这一点?一直在找这个方法,没找到
您可以使用 Repository Files API:
从存储库中检索文件GITLAB="gitlab.example.com"
PROJECT_ID=13083
FILE_PATH="/path/to/filename.java"
BRANCH_NAME="main"
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://${GITLAB}/api/v4/projects/${PROJECT_ID}/repository/files/${FILE_PATH}?ref=${BRANCH_NAME}"
大部分内容都非常清楚,但您可以从项目 API 响应中或从 Gitlab 中项目名称下方的项目页面中获取项目 ID。文件路径应该是从项目根目录到文件的路径。 ref
参数可以是分支名称、标记名称或提交 sha。