我用吉托莱特管理 git 存储库,可使用 SSH 和私钥通过互联网访问。
我想从我的 LAN 提供对其中一些存储库的只读访问权限。我知道在 http 上使用 git 时存在一些陷阱,我想避免仅为了只读访问而进行复杂的 git-over-http 设置。
由于存储库是空的,我只想阅读:如果我只是设置任何常规 Web 服务器通过 http 为 git 存储库提供服务,它是否可以完美运行?有什么缺点吗?
答案1
以下是您的选择:
正如您提到的,您可以使用 http(无需设置)进行只读。
使用 git bundle (它用作只读存储库)http://git-scm.com/docs/git-bundle
设置提交/推送钩子并在钩子中使用 exit 0 来终止 git push,而不会将任何内容推送到您的存储库。
当然还有其他选项(但它们不值得详细提及:例如设置组权限,阻止任何非 u 用户(钩子)等等。)
希望它对你有帮助。
答案2
查看文章通过 apache http 共享有关设置 Apache 共享和控制访问的完整手册。
这篇非常详细的文章太长了,无法在此重现。