git - Git 存储库服务器的 Web 界面允许用户帐户 self 管理

标签 git redmine gitolite gitorious gitlab

这个问题是https://stackoverflow.com/q/438163/1168342的延伸 我想具体了解是否有 Git 存储库服务器的 Web 界面允许用户:

  1. 如果他们还没有帐户,请注册一个。 (假设服务器只能通过 VPN 可见)
  2. 与同一服务器上的其他用户管理(创建/共享)私有(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/

相关文章:

memory-management - 有什么方法可以在Redmine中快速(拖放)重新排序任务?

python - 使用 git bash 打开 PyCharm 的路径?

git - 为什么 git log 会显示我的密码?

git - 使用提交哈希将自述文件添加到 'git archive'

project-management - Trac 与 Redmine

ruby-on-rails - 无法在 Windows 下使用 Ruby 2.0.0 为 Redmine 运行任何单元测试。这可能吗?

git - 使用 fetch 而不是 push 备份 git 存储库

linux - 从 Windows 和 Eclipse 连接到 gitolite 服务器

git - 在推送通知邮件中添加 git diff

git - 如何分块推送 Git 镜像?