带有 gitolite 的公共存储库
我安装了一个配置好的 gitolite,它适用于我正在从事的其他一些项目。但是,我想建立一个公共存储库,任何人都可以从中调用克隆(但不能推送)。
我到处都搜索过,但找不到办法做到这一点?有人设法用 gitoite 做到这一点吗?
I installed an configured gitolite and it works for some other projects I'm working on. However, I want to set up a public repo that anyone call clone from (but not push).
I've searched everywhere and cannot find a way to do this? Has anyone managed to do this with gitoite?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
看起来像这个人已经做到了,并提供了 Debian 和 Gentoo 的 HowTo。使用git 守护进程是解决方案。
Seems like this guy has done it and provides a HowTo for Debian and Gentoo. Using the git daemon is the solution.
基于 eckes 的答案,将 daemon 作为只读用户添加到任何存储库将使其可通过 git:// 协议访问,假设您已配置 git-daemon (随 git 一起提供,可能需要最少的配置)。
虽然我还没有验证 GNU/Linux 的确切过程,但在 FreeBSD 上它的工作原理如下:
下面假设您在 /usr/local/git 配置了一个工作的 git + gitolite 系统。
如果您想要自动公开所有存储库,请将--export-all附加到上面的git_daemon_flags。否则,将至少具有 R 权限的 daemon 用户添加到您想要公开的任何存储库中,gitolite 将处理其余的事情。
来源
Building on eckes' answer, adding daemon as a read-only user to any repo will render it accessible via the git:// protocol, assuming you have git-daemon configured (ships with git, may require minimal configuration).
While I haven't verified the exact process for GNU/Linux, on FreeBSD it works like so:
The following assumes you have a working git + gitolite system configured at /usr/local/git.
If you want to have all repositories automatically public, append --export-all to the git_daemon_flags above. Otherwise, add the daemon user with at least R privileges to whichever repos you want to make public, and gitolite will handle the rest.
Sources