我正在尝试使用curl通过以下命令从Bitbucket存储库中获取原始文件(我尝试了很多,但包括了后两个):
curl -L -O https://user:password@bitbucket.org/username/repository/branch/HEAD/filename.txt
curl -L -O https://user:password@bitbucket.org/username/repository/branch/raw/filename.txt
我有一个提交到master分支的文件名为filename.txt
我想获取上述文件的原始版本。我需要什么代码?我从这些命令中得到的就是页面包含的HTML代码。
注意:对于此特定用法,安全性不是问题。我还在以下链接中尝试过解决方案:Download private BitBucket repository zip file using http authentication
答案 0 :(得分:0)
您几乎拥有它,请尝试以下操作:
curl -O -u username:password https://bitbucket.org/username/repository/raw/branch/filename.txt
这是curl
的文档
-O
,--remote-name
:“将输出写到一个名为我们得到的远程文件的本地文件。(仅使用远程文件的文件部分,路径被切断了)”
-u
,--user
<user:password>
:“指定用于服务器身份验证的用户名和密码。”
答案 1 :(得分:0)
这很简单:您的URL确实指向包含该文件的网页。只需选择指向文件的“ RAW”版本的URL(右上角的按钮即可解决问题),然后您将使用该URL获得正确的内容。
答案 2 :(得分:0)
不是那么简单。 BitBucket现在正在围绕原始内容返回一些HTML标记。
<html><head></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
...my raw content...
</pre></body></html>
答案 3 :(得分:0)
curl -o filename -H "Authorization: Bearer Token" https://bitbucket.com/projects/projectname/repos/reponame/raw/filename?at=refs%2Fheads%2FBranchName
用你的替换以下内容 令牌 bitbucket.com(网址) 项目名称 重新命名 文件名 分支名称
这对我有用。之前遇到过获取 HTML 垃圾的问题。