来自Bitbucket的Wget压缩提示(mercurial)

时间:2011-10-31 14:44:08

标签: mercurial wget bitbucket

我们想使用mercurial进行Web开发,但我们不能(也不想)在共享主机上安装mercurial。我们尝试使用wget如上所述here,但我得到401错误。 凭据和链接是正确的(为安全起见而进行了修改)。

有没有办法从命令行下载源?

这个错误还是我做错了什么?

以下回复:

$ wget _http://xxxx:yyyyyyy@bitbucket.org/username/repo/get/be51983f6357.zip 
--2011-10-31 00:26:50--
http://username:password@bitbucket.org/username/repo/get/be51983f6357.zip 
Resolving bitbucket.org... 207.223.240.182, 207.223.240.181 
Connecting to bitbucket.org|207.223.240.182|:80... connected. 

HTTP request sent, awaiting response... 
301 Moved Permanently Location: https://bitbucket.org/username/repo/get/be51983f6357.zip [following] 
--2011-10-31 00:26:51-- 
https://bitbucket.org/username/repo/get/get/be51983f6357.zip 
Connecting to bitbucket.org|207.223.240.182|:443... connected. 
HTTP request sent, awaiting response... 
401 UNAUTHORIZED Authorization failed.

取2:

Thanx寻求帮助...我将http更改为https和用户user&密码属性:

浏览器工作正常,Wget没有......

$ wget --verbose --user=XXXXX --password=YYYY  https://bitbucket.org/ekku/REPO/get/aabbccddeee.zip
--2011-10-31 18:27:10--  https://bitbucket.org/ekku/REPO/get/aabbccddeee.zip
Resolving bitbucket.org... 207.223.240.182, 207.223.240.181
Connecting to bitbucket.org|207.223.240.182|:443... connected.
HTTP request sent, awaiting response... 401 UNAUTHORIZED
Failed writing HTTP request: Bad file descriptor.
Retrying.

取3:

我也试过curl,但是我收到错误信息:     禁止的(403)     CSRF验证失败。请求中止。

2 个答案:

答案 0 :(得分:8)

我使用卷曲:

curl --digest --user username:password https://bitbucket.org/user/repo/get/tip.zip -o test.zip    

来自Bitbucket的回答:Issue #3225 - Commanline download compressed tip

  

嗨Esa,我们实际上不支持下载源包的基本身份验证。您需要使用摘要身份验证。另外,根据我的理解,wget的摘要auth实现有一个错误。您可以将curl与--digest标志和-o标志一起使用来指定输出文件。干杯,迪伦

答案 1 :(得分:0)

你不应该在http上使用bitbucket;始终使用https。这应该摆脱你所看到的额外重定向。

还可以使用命令行选项--user--password来指定wget的身份验证; SSL可能不允许向URL添加用户和密码,因为服务器部分(://和下一个/之间)以纯文本形式发送到服务器。