bounty还有2天到期。回答此问题可获得+50声望奖励。kenorb希望引起更多关注这个问题。
我已经克隆了Git仓库,文件存储在本地ipfs中,我已经初始化了ipfs特殊远程,但是我不能下载存储在那里的文件。
我已经按照page中的建议运行了:git annex copy --from ipfs
,但文件没有下载。就像Git-Annex没有看到他们一样。
以下是我的设置(这部分工作):
1.我已经运行了本地IPFS守护进程(ipfs init; ipfs daemon
)。
1.我已经安装了Git Annex(Apt/Brew install git-annex)。
1.已安装的ipfs远程脚本(根据git-annex/special remotes/ipfs页面):
mkdir -v ~/bin
wget -O ~/bin/git-annex-remote-ipfs https://git-annex.branchable.com/special_remotes/external/git-annex-remote-ipfs
export PATH="$PATH:$HOME/bin"
1.我创建了一个新的repo(mkdir test01 && cd test01 && git init
)。
1.我提交了一个常规文件(touch README.md; git add README.md; git commit -m'Initial commit' README.md
)。
1.初始化git-annex(git annex init
)
1.我已经初始化了附件远程(git annex initremote ipfs type=external externaltype=ipfs encryption=none
)。
1.我已经提交了ipfs文件(echo test > ipfs-file.txt; git annex add ipfs-file.txt; git commit -m'Adds ipfs file' ipfs-file.txt
)。
1.复制到本地ipfs对象存储(git annex copy --to ipfs
)。
1.将本地存储库与远程存储库同步(git annex sync ipfs
)。我不确定这是否有必要。
1.我已经确认文件是在ipfs有ipfs地址与CID分配(git annex whereis ipfs-file.txt
).
git annex list
输出X__X ipfs-file.txt
,另外确认文件在ipfs存储。
克隆到新的repo并从ipfs下载文件(这部分不起作用):
1.创建了另一个空存储库(mkdir ../test02 && cd ../test02 && git init
)。
1.从以前的存储库中提取文件(git pull ../test01
)。
1.现在ipfs-file.txt
是指向不存在的文件(ls -la ipfs-file.txt
)的符号链接。
1.我已经在新的repo(git annex init
)中初始化了git-annex。
1.我已经初始化了附件远程(git annex initremote ipfs type=external externaltype=ipfs encryption=none
)。
1.已启用ipfs远程(git annex enableremote ipfs
)。我觉得没必要。
1.我做了同步(git annex sync ipfs
)。我不确定这是否有必要。
1.我已经运行了:git annex copy --from ipfs
,这没有做任何事情。我希望它从ipfs远程复制文件。
我运行了以下命令:
% git annex whereis ipfs-file.txt
whereis ipfs-file.txt (0 copies) failed
whereis: 1 failed
% git annex list
here
|web
||bittorrent
|||ipfs
||||
____ ipfs-file.txt
这表明该文件不在ipfs remote(缺少X
),但它在第一个存储库中。
我已经运行了git annex copy --from ipfs -d
(带调试),但git-annex-remote-ipfs
脚本甚至没有像在--to ipfs
上那样被调用。
1条答案
按热度按时间fquxozlt1#
作为一种解决方法,您可以使用
git annex whereis
在原始存储库(test01)中查找文件的ipfs地址,以获得文件的IPFS CID。然后,在新存储库(test02)中,使用
git annex registerurl
命令和获得的IPFS CID。这应该允许您在新的存储库(
test02
)中运行git annex copy --from ipfs
并下载文件。