我正在尝试使用 git 构建一个版本控制服务,并由 (Azure) blob 存储提供支持。我的意图是在本地文件系统上创建一个裸仓库,然后将这个目录/文件结构迁移到 blob 存储中(我已经完成了)。
下一部分涉及使用此 repo 进行提交,获取最新版本,etc..
我天真地希望,如果我将裸仓库的全部内容放入 blob 存储中,我就可以使用共享访问签名/URI 作为仓库的远程路径。但是,当使用 libgit2sharp 并调用...
Repository.Clone(sharedAccessUri, localPathForClone);
...一个例外告诉我...
不支持的 URL 协议
所以我天真的假设(我可以简单地将 repo 目录结构放入 blob 存储并从 URL 调用它)是错误的,或者......可能是 libgit2sharp 只支持 HTTPS? (目前我正在本地开发,共享访问 URI 是 HTTP。)正如他们在自述文件中所说的那样...
我们目前缺乏适当的文件
如果不能使用 blob 存储作为远程存储库,那么我想我可以在本地创建它,压缩它,将这个存档存储为一个 blob,然后检索这个存档,解压缩,然后克隆它。
那么,是否可以直接从 Azure blob 存储运行远程仓库?