如何使用 cURL 或 wget 从本地 BitBucket 服务器下载单个文件,而不是克隆 repo

如何使用 cURL 或 wget 从本地 BitBucket 服务器下载单个文件,而不是克隆 repo

我正在尝试从 Linux 服务器上的 BitBucket 下载单个文件。当我尝试从 Web 访问它时,我确实可以访问存储库,因此这不是权限问题

我以前可以使用这个命令

curl --output <output-file-name>  -u <userid>  http://bbserver:7990/projects/prjname/repos/repponame/browse/configurations/infile.txt 

现在,当我尝试执行它时,它只会下载一个 html 页面

我还尝试使用原始路径执行以下命令。这也会下载一个 html 页面

curl --output  outputfile.txt  -u <userId> http://bbserver:7990/projects/prjname/repos/repponame/raw/configurations/infile.txt?at=refs%2Fheads%2Fmaster

我也尝试了 wget 命令 - 但输出相同。

我需要修改或查看什么(或寻求 Linux SA 的帮助来查看)才能下载单个文件?

另外,我可以下载目录吗 - 像configurations上面那样,而不是单个文件。

当然,我需要完成单个文件的下载才能进入下一步。

我搜索过 SO,但这些是我找到的从 BB 下载文件的命令。没有找到当它返回 html 文件时该怎么做的解决方案

谢谢

答案1

似乎有一个 API 路径可供您使用

curl -u user:pwd http://bitbucket:7990/rest/api/1.0/projects/PROJCT_NAME/repos/REPO_NAME/raw/FOLDER/FILE.TXT

如果没有其他事情,API 响应将比 HTML 响应更有用。API 文档位于

https://docs.atlassian.com/bitbucket-server/rest/7.18.0/bitbucket-rest.html#idp366

答案2

也许最好直接使用 git,因为 bitbucket 似乎“试图阻止”此功能。

git 存档 --format=tar
--remote=ssh://远程服务器/远程存储库主路径 1/路径 2/| tar -xv

https://stackoverflow.com/questions/160608/do-a-git-export-like-svn-export

相关内容