我该如何在Windows上分享Git仓库?“正确”的方法似乎是运行“git-daemon”(Unix系统特有)、运行ssh(Unix系统特有)或者运行Git的http前端。如果我只有两个Windows设备,并且不想为了运行Git而安装Unix,那么在这两个设备之间共享仓库的最佳方式是什么?
我该如何在Windows上分享Git仓库?“正确”的方法似乎是运行“git-daemon”(Unix系统特有)、运行ssh(Unix系统特有)或者运行Git的http前端。如果我只有两个Windows设备,并且不想为了运行Git而安装Unix,那么在这两个设备之间共享仓库的最佳方式是什么?
为了拥有具有良好 Web 前端 和管理功能的 http 服务的代码库,您需要仅拥有 Java(不是 JRE)。通过 http 最简单的方式分享和管理您的 Git、Mercurial 和 Subversion 代码库。
Git是一种分布式版本控制系统。因此,在大多数情况下,您不需要专门的程序来服务存储库中的内容,您只需要一种从两台机器访问存储库的方式。一种方法是像@thomas建议的那样,在共享网络位置中放置存储库的克隆。
我过去发现的另一种成功方法是作为一名贫穷的研究生使用Dropbox作为“主”存储库。基本上,您将存储库git clone到您的Dropbox目录中,然后可以在两台机器上设置Git以从Dropbox存储库推送/拉取。 Dropbox将在后台执行同步操作。这仅适用于轻度活跃的存储库。
我过去所做的就是在一台机器上通过虚拟盒子运行一个小型Linux客户端的VM。您只需要将ssh端口转发即可,无需在VM上配置复杂的网络。
这将允许您运行像gitolite这样的东西来管理用户。
出于这个原因和许多其他原因,我已经切换到在所有机器上运行Linux,并且只有在需要进行Windows开发时才在VM中运行Windows。许多在Linux上运行的优秀服务比从客户操作系统连接更容易。
如果您只有两台Windows机器,则可以将URL添加到远程,但请确保通过文件协议完成。例如:
git remote add origin file:///\\some-server/share/repo.git
有些人声称,如果你只使用路径,Git 将尝试在两个仓库之间创建硬链接。据我所知,Msysgit 并不会这样做,你可以使用没有文件协议的路径:
git remote add origin /z/somepath/repo.git