如何使用cURL从GitHub下载tarball?
我正在尝试使用cURL从GitHub下载tarball,但似乎没有redirect:
$ curl --insecure https://github.com/pinard/Pymacs/tarball/v0.24-beta2 <html><body>You are being <a href="https://nodeload.github.com/pinard/Pymacs/tarball/v0.24-beta2">redirected</a>.</body></html> 注意:wget适合我:
 $ wget --no-check-certificate https://github.com/pinard/Pymacs/tarball/v0.24-beta2 
但是我想使用cURL,因为最终我想用类似下面的内容来解压缩它:
 $ curl --insecure https://github.com/pinard/Pymacs/tarball/v0.24-beta2 | tar zx 
我发现redirect后的URL竟然是https://download.github.com/pinard-Pymacs-v0.24-beta1-0-gcebc80b.tar.gz ,但我希望cURL足够聪明这个出来了。
 使用-L选项来跟随redirect: 
 curl -L https://github.com/pinard/Pymacs/tarball/v0.24-beta2 | tar zx 
现代化的做法是:
 curl -sL https://github.com/user-or-org/repo/archive/sha1-or-ref.tar.gz | tar xz 
 相应地replaceuser-or-org , repo和sha1-or-ref 。 
 如果你想要一个压缩文件,而不是一个压缩包,指定.zip而不是.tar.gz后缀。 
 您还可以通过指定-u token:x-oauth-basic选项来检索私人回购的归档。 将tokenreplace为个人访问令牌。 
 你也可以使用wget来“解压缩它”。 只需将stdout指定为输出文件( -O - ): 
 wget --no-check-certificate https://github.com/pinard/Pymacs/tarball/v0.24-beta2 -O - | tar xz