这个问题是https://stackoverflow.com/q/438163/1168342的延伸 我想具体了解是否有 Git 存储库服务器的 Web 界面允许用户:
- 如果他们还没有帐户,请注册一个。 (假设服务器只能通过 VPN 可见)
- 与同一服务器上的其他用户管理(创建/共享)私有(private)存储库。
我查看了 Redmine 和 GitLab,两者似乎都需要 super 用户才能创建帐户。 GitLab 在 Gitolite 上运行,which seems to support the back-end of pre-configured accounts .但我正在寻找管理用户/共享的前端软件。
附注这也是与Best source code control for a university environment (low overhead to manage repositories)相关的一个更集中的问题
我们想要的解决方案应该适用于整个大学,允许任何注册用户(例如 LDAP)在没有管理员干预的情况下创建和共享存储库。想想超过 10K 的用户,每个学生/类(class)(每个学期)有几个 repo 协议(protocol),在没有实验室助理或教授的情况下动态创建团队,以及研究/俱乐部/小组使用等。
最佳答案
如果您有 LDAP 或 ActiveDirectory(打开 LDAP),您可以允许用户使用他们的 LDAP 电子邮件地址和密码登录 Gitlab。
但管理员或项目负责人仍需要将用户添加到项目中。
然后,要自动将用户添加到项目中,请使用系统 Hook 。不幸的是,系统钩子(Hook)的文档很少,而且网上没有什么文档;它是您安装的 Gitlab 应用程序的一部分。但是在你安装它之后,你可以通过 (http://yourgitlabhost/help/system_hooks) 访问它。
您需要编写一个小型网络应用程序来接收这些 Hook ,然后调用 Gitlab API (http://yourgitlabhost/help/api) 将新登录的用户添加到适当的项目中。
关于git - Git 存储库服务器的 Web 界面允许用户帐户 self 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10271726/