2012-07-11 74 views
1

我正在使用Gitolite
这是我的文件夹结构:Gitolite许多用户具有特定的工作目录,并且所有用户都使用一个存储库

/var/www/demo.com/user1 
/var/www/demo.com/user2 
/var/www/demo.com/user3 

我已经创建了一个名为demo.git一个存储库。
我已经创建了三个gitolite用户user1,user2user3

现在,我的问题是,当user1克隆或提交或推或拉的更改,然后它只应该改变user1的工作目录,并同user2user3
你会如何执行与Gitolite?

回答

0

user1拉动时,它只会改变他/她自己的工作目录。

但是,当user1推,他/她推到一个 gitolite管理回购。
如果您需要提供每个用户的个人分支,你可以看看gitolite personal branches,为了加强user1在一个特定的分支推

用户“alice”(如果她在用户列表)然后按内personal/alice/任何分支机构。
这意味着她可以推personal/alice/foopersonal/alice/bar,但不是personal/alice

(背景:在运行时,“USER”组件将被替换为调用用户的名称。访问权由通常的右侧决定)。

相比于同一台服务器上使用任意分支的名字,这样的:

  • 通过网罗所有这些特设分支进入“个人/”命名空间降低命名空间污染
  • 通过给每个开发人员自己的子层次结构来减少分支名称冲突。
  • 消除了考虑访问控制的需要,因为用户只能推送到他自己的子层次结构。
相关问题