无法从远程git服务器中提取单个文件

时间:2015-10-01 09:13:57

标签: git repository

我问的是这个问题,因为我已经尝试过在论坛中发布的每一个答案,但没有一个对我有用。

我尝试了以下答案,从远程Git存储库下载单个文件“testfile.txt”,但没有一个工作:

命令1

git archive --remote=git://10.10.10.5/project.git HEAD testfile

获取以下错误:

errno=Connection timed out
fatal: unable to connect a socket (Connection timed out)

命令2

git archive --remote=ssh://10.10.10.5/project.git HEAD testfile

错误:这会提示输入我输入的ssh密码,但之后会提示我输入root密码,但不存在。

Enter passphrase for key '/root/.ssh/id_rsa':
root@10.10.10.5's password:
Permission denied, please try again.

所以在这个阶段,我想知道我做错了什么。任何帮助将不胜感激。

注意:

我从本地服务器连接 root 并访问具有 git 用户帐户的git服务器

更新

我对其中一个命令进行了一些更改,如下所示:

git archive --remote=ssh://git@10.10.10.5/home/git/project.git HEAD local1.json

这会提示输入ssh密钥然后我得到以下但无法找到文件

Enter passphrase for key '/root/.ssh/id_rsa':
pax_global_header0000666000000000000000000000006412603247310088520gustar00rootroot0000000000000052 comment=e5c6e52614cccd39797bc17e7d11c4d2f7893b18
local1.json000066400000000000000000000000131260276633100131240ustar00rootroot00000000000000V2 updated

1 个答案:

答案 0 :(得分:2)

来自git-archive man

Creates an archive of the specified format containing the tree structure for the named tree, and writes it out to the standard output.

--format=<fmt>

Format of the resulting archive: tar or zip. If this option is not given, and the output file is specified, the format is inferred from the filename if possible (e.g. writing to "foo.zip" makes the output to be in the zip format). Otherwise the output format is tar`

所以你想要做以下事情:

git archive --remote=ssh://git@10.10.10.5/home/git/project.git HEAD local1.json > archived_file.tar