1

我是 Gitolite 的新手,并且很难管理其中的存储库。我们的 git 服务器中有 1000 多个存储库和 200 多个用户。当我们运行 ssh git@hostname 时,它​​看起来很乱,它为我提供了具有写访问权限和读访问权限的那些存储库的下拉列表。

此外,当我想克隆“y”仓库时,我运行命令;git clone git@hostname:x/y

但是如果想在 'y' 下克隆文件夹 'z' git clone git@hostname:x/y/z ----它给了我以下错误

在 /home/123456/z/.git/ 中初始化空 Git 存储库 R 访问 x/y/z 拒绝 vb-ubuntu-32 (或者给定路径可能没有存储库。你拼写正确吗?)致命: 远端意外挂断

我不想像'z'一样在同一个文件夹下创建单独的存储库。

有什么方法可以只克隆回购的内容吗?

我的仓库列表越来越大,具有相同的多个仓库,如下所示 x/y x/y/z x/y/f x/y/f/g

我不知道我的 gitolite 设置是否配置不正确。

提前感谢您的支持。

4

1 回答 1

1

与您正在寻找的内容接近的主要 gitolite 功能称为命名空间

在许多项目中,开发人员需要将他们的工作推送到某个中心位置以供其他人获取。
命名空间允许您为每个开发人员提供看起来像她自己的存储库或一组存储库,同时将所有这些逻辑存储库组合到服务器上的一个物理存储库中。如果它们都共享许多共同的历史记录,这将节省大量磁盘空间。

它将 repo ( x/y/z) 的类似命名空间的路径与服务器上的较少 repos 相结合。
(尽管仔细阅读它的文档)

但即便如此,y也不能成为回购,正如Chronial 提到的那样。


我想知道是否有办法从特定仓库中的 git 服务器(使用 gitolite)克隆文件夹或文件。喜欢x/yz是里面的文件夹y
如何z仅为该存储库克隆?

您可以在另一个(嵌套存储库)中克隆一个存储库,但这样做的官方方法是使用git submodules

于 2013-05-10T02:17:14.707 回答