我想通过命令行 curl 一个 git 标签:
curl -O http://someurl
但是当我尝试解压文件时它坏了?有谁知道是什么问题?
您可以curl
从 GitHub 等 git repos 托管服务中获取 git 标签,因为它有一个提供 tar(或 zip)的专用 tarball 服务(如Nodeload)。但没有任何其他 git repo 有相同的服务。
有关 GitHub(或此GitHub 教程)的具体示例,请参阅“从 Private Repo 下载 Git 存档 tarball 时遇到问题” :curl
curl -sL --user "${username}:${password}" https://github.com/$account/$repo/tarball/$tag_name > tarball.tar
在公共回购中:
curl -L https://github.com/pinard/Pymacs/tarball/v0.24-beta2 | tar zx
git
本身不提供http接口。一个解决方案是git archive
改用
git clone http://example.com/myrepo.git
git archive mytag > myrepo-mytag.tar.gz
如果您只需要获取必要的最小值,
git init temp
cd temp
git remote add x http://example.com/repo.git
git fetch x sometag --depth=1
git archive FETCH_HEAD > ../repo.sometag.tgz
cd ..
rm -rf temp
会的