多用户 Git 版本控制

多用户 Git 版本控制

我对这个问题有点困惑,让我向你解释一下我的问题:我想设置一个 git 存储库,四个用户中的三个将做出贡献,因此他们需要下载代码并能够将他们的更改上传到服务器或使用最新的修改更新他们的分支。

因此,我设置了一台 Linux 机器,安装了 git,设置了存储库,然后添加了用户以便通过 ssh 启用访问。

现在我的问题是,下一步是什么?git 文档有点令人困惑,例如,当我尝试从虚拟用户帐户克隆存储库时,我得到了:

xxx@xxx-desktop:~/Documentos/git/test$ git clone -v ssh://[email protected]/pub.git
Initialized empty Git repository in /home/xxx/Documentos/git/test/pub/.git/
[email protected]'s password: 
fatal: '/pub.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

这是权限问题吗?需要任何特殊配置吗?

我想避免使用 git-daemon 或 gitosis,抱歉,也许我的问题听起来很傻,但是 git 功能强大,但我承认它不是那么用户友好。

谢谢 Br

答案1

您应该从这个错误开始:

fatal: '/pub.git' does not appear to be a git repository

Git 不认为这是一个 git 存储库。

因此,克隆命令中的存储库路径很可能不正确。

克隆命令中服务器上存储库的路径是否正确?

根据您的命令,存储库位于服务器的 / (根)目录中(例如 /pub.git)

您需要指定服务器上存储库的完整路径。

如果存储库位于用户的主目录中,那么您还必须在命令中包含这些目录:

$git clone -v ssh://[email protected]/~/pub.git

或者

$git clone -v ssh://[email protected]/home/username/pub.git

答案2

比 gitosis 更好的是 gitolite,它更新、更灵活。不久前我写了一篇关于它的博客文章:http://colonelpanic.net/2011/01/git-and-gitolite-nirvana/

答案3

gitosis 管理员在我看来,这是开始使用 git 服务的最佳方式。安装软件,设置“git”用户,将每个用户的 SSH 公钥放入配置文件中,就大功告成了。

相关内容