从linux服务器上的git repo下载文件

时间:2017-03-24 18:19:22

标签: linux git bash github continuous-deployment

我看过很多关于如何从git repo下载特定文件的文章/问题,但它们似乎都不符合我的情况。

  • 我需要什么

使用来自linux服务器的http或ssh从私有git存储库下载spefic文件

3 个答案:

答案 0 :(得分:0)

更新 - 我最初将此写为关于git的一般答案,并将在下面保留该信息。但我看到你正在谈论github,它确实提供了一些额外的选择。

例如,您可以使用

之类的命令
curl https://raw.githubusercontent.com/eirslett/frontend-maven-plugin/master/README.md > README.md

从frontend-maven-plugin下载README.md(我刚刚看到它)。

你提到你的是私人回购,所以你必须处理身份验证;我建议阅读curl,因为它应该能够为回购提供凭据。

https://curl.haxx.se/docs/manpage.html

原始回答

从远程git仓库中下载单个文件并不是一个单一的git命令。我知道你能做的最接近的是:

首先克隆repo而不签出工作树

git clone -n <repo-url>

然后只检查您想要的文件

git checkout master -- path/within/repo/to/file

但不要被愚弄:这仍然会下载整个回购。 (这就是git是如何工作的。)所以除了获得./path/within/repo/to/file之外,你还得到包含所有其余数据的./.git。

答案 1 :(得分:0)

你可以用这种骇人的方式做事:ö(å_å)ö

如果此文件位于github.com上,请执行以下操作:

wget https://example.githubproject.com/user/project/master/README

您可以尝试 git archive命令

git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)

创建一个tar存档,其中包含当前分支上最新提交的内容,并将其解压缩到/ var / tmp / junk目录中。

示例git archieve命令用法:

git archive --format=tar --remote=origin HEAD | tar xf -
git archive --format=tar --remote=origin HEAD <file> | tar xf -

使用提示,git archiveExamples

答案 2 :(得分:-1)

我不确定你的问题是什么,但是,你做过git clone <<url of git project>> ??