使用“wget”(如“curl”)下载私有 GitHub 存储库的 ZIP 文件

使用“wget”(如“curl”)下载私有 GitHub 存储库的 ZIP 文件

已经有一些问题和答案如何下载 GitHub 存储库的 ZIP 文件,但如果存储库是私有的,它们就不起作用。

我知道这应该以某种方式使用wget,因为它确实适用于curl

curl -u <USER> -L -o <FILENAME> https://github.com/<USER>/<REPO>/archive/master.zip

上面的行将询问<USER>密码,下载 master 分支 ZIP 文件并将其另存为<FILENAME>.然而,wget等效的方法不起作用:

wget --user=<USER> --ask-password --output-document=<FILENAME> https://github.com/<USER>/<REPO>/archive/master.zip

结果是ERROR 404: Not Found.

答案1

当发出未经身份验证的 GET 请求时,github.com 似乎没有礼貌地表示该资源不存在。通常wget会首先尝试在没有身份验证的情况下请求资源,然后在出现 401 Not Authenticated 错误时使用该身份验证数据重试。

这可以通过传递来解决--auth-no-challenge,以便wget第一次发送身份验证数据。

相关内容