我想使用 curl
在 GitLab 中下载我的私有(private)仓库。我知道我可以使用 Gitlab API,但出于某种原因,它不起作用。
这可能吗?当我尝试这样做时,它总是返回登录页面。
最佳答案
这是可能的,只需按照以下步骤操作:
首先,您必须创建一个“个人访问 token ”:
为您的“个人访问 token ”输入一个名称。
选中“api 访问经过身份验证的用户的 API”
点击“创建个人访问 token ”
页面将重新加载并保存您的新 token 。
确保将 token 保存在安全的地方,您将无法再次查看它。
现在您有了“个人访问 token ”,您需要获取项目 ID 才能使用 API:
转到 https://gitlab.com/api/v4/projects?private_token=XXXXXXXXXXXXXXXXXXXX (用你的新 token 替换 Xs)
从 json 中获取项目的 ID。
(或者您可以从其网页复制项目 ID)
现在您可以调用:
wget -O your_project.tar.gz https://gitlab.com/api/v4/projects/0000000/repository/archive?private_token=XXXXXXXXXXXXXXXXXXXX
这会将您的项目下载为 .tar.gz
文件。
编辑:您可以通过向 URL 添加 &sha=...
参数来获取特定提交/标记的压缩包,例如:
https://gitlab.com/api/v4/projects/24470128/repository/archive?private_token=XXXXXXXXXXXXX&sha=606e81c69eff27eccbbc59a0546a9439780dff55
关于git - 下载 GitLab 私有(private)仓库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24463229/