我正在尝试通过http协议使git仓库只读,由于我的主机系统上没有安装git-http-backend
,所以我采用了旧的方式,将裸仓库放置在可以通过http访问的位置。
我成功地在主机上使用git clone --bare <some-remote-location>
创建了裸仓库。
现在,当我使用git clone http://my.host.name/location
指向新克隆的仓库时,会提示repository not found
的信息。
当我捕获网络流量时,我发现git试图访问http://my.host.name/location/info/refs
。这是预料之外的失败,因为仓库中没有info/refs
路径,而是直接位于仓库根目录下的info
和refs
目录。
显然,克隆的裸仓库结构与客户端的期望不符。有人知道这可能是为什么吗?