1

按照此答案中建议的步骤,我设法在本地计算机上设置了一个存储库,将其推送到dropbox文件夹上的裸存储库并将其克隆到另一个本地位置。也就是说,git clone ~/Dropbox/git/project.git .在目录中调用~/project-image。这意味着它似乎工作正常 - 至少对我一个人来说。

但是,我无法使用https. 从dropbox我获得了URLof~/Dropbox/git/project.git然后尝试了类似的东西

git clone https://www.dropbox.com/sh/xxxxxxx/xxxxxxx .

在另一个目录~/project/image2~中。这不起作用...我收到以下错误:

warning: remote HEAD refers to nonexistent ref, unable to checkout.

在我提到的答案中,似乎可以从dropbox. 如何?似乎URL每个子目录的子目录都发生了变化,因此 git 无法克隆。这是原因吗?有没有办法克服这个问题?请注意,我不想将存储库放在我的公共部分,dropbox如果需要,我想共享一个链接。


编辑 - 验证存储库dropbox根据我运行的@Idx 建议,在~/Dropbox/git以下内容中:cat project.git/HEAD返回ref: refs/heads/master.

4

1 回答 1

1

为了使 git 能够从不支持 git 的智能 http 协议(Dropbox 就是这种情况)的 http 服务器克隆或获取,您需要在git update-server-info更新 ref(分支或标签)的任何时候运行在以这种方式提供服务的存储库中。

根据您打算如何对该存储库进行更新,您可能能够设置一个或多个挂钩来自动为您执行此操作。

于 2013-03-05T15:30:41.727 回答