我有一个项目为我的学校设置一个 git 服务器,它带有一个 Web 界面来创建存储库并显示它们。此 Web 部件将由了解用户的 Django 处理。
现在的问题是:我希望通过身份验证来拉取和推送私有存储库,但我不能使用 SSH 来处理该部分(IT 人员不想对此提供支持)。HTTP 协议是只读的,没有“复杂的 WebDAV”(根据官方文档)并使用 .htaccess 作为身份验证。.htaccess 的问题是用 Django 管理它们:我尝试在其中使用 Django 用户的哈希,但它不起作用。最后,Git 协议是可读写的,但缺少身份验证。
加起来:
- 我想要与 Django 的用户数据库链接的身份验证。(为了避免多个地方有相同的数据)
- 没有 SSH
- 避免使用 WebDAV 和 .htaccess
有了这些限制,我发现重写 git 守护进程(github 上的代码)来处理身份验证是一个想法,但我不确定 Git 客户端会如何对此做出反应。
如果你们有其他想法或想告诉我使用 WebDAV/.htaccess/... 会更好,我会很高兴听到它!