假设我们有两个独立的github用户:Foo和Bar.他们分别拥有Quux和Waldo存储库.所以Foo可以推送到Foo/Quux并且无法推送到Bar/Waldo.对面酒吧是对的.然后Foo克隆了他的Quux存储库:
$ git clone ...
...
$ git remote -v
origin git@github.com:Foo/Quux.git (fetch)
origin git@github.com:Foo/Quux.git (push)
Run Code Online (Sandbox Code Playgroud)
看起来,当Foo通过git用户对Foo/Quux存储库具有写入权限时,他没有通过同一用户写入对Bar/Waldo存储库的访问权限.有什么办法可以在我的git服务器上达到相同的行为吗?我应该sshd为此目的编写自定义守护程序吗?
您可以使用Gitolite通过SSH对您的git存储库进行细粒度的访问控制,其中每个用户都通过她的SSH密钥进行识别.
与已经提到的gitosis相比,Gitolite仍然得到维护,并支持对存储库访问进行更精细的控制.
如果你想在内部获得更多GitHub的功能,你应该看一下GitLab,当然还有GitHub Enterprise.
| 归档时间: |
|
| 查看次数: |
810 次 |
| 最近记录: |