首页 > 代码库 > 再谈git的http服务-权限控制gitweb版(未成功)
再谈git的http服务-权限控制gitweb版(未成功)
截至目前,对gitweb的掌握还没达到最终目标,仅仅实现了通过浏览器来浏览项目,通过git命令仍然未能clone项目。但仍然要记录下来,主要是因为打算暂时放弃这条路,而所收获的一些经验还是要记录下来。说不定哪天又捡起来了呢。
首先描述下目标:可以按照项目、人员来分别控制项目的读写权限。方法应该很多,之前通过git-http-backend的hook可以搞定,gitlab也应该可以搞定。根据已有的资料,gitweb也应该可以搞定。思路之一应该是scriptalias,把git命令的申请路由到git-http-backend或gitolite等目录下,而普通的浏览器的申请直接由gitweb实现:
# 对git库的各种请求,执行git-http-backend.cgiScriptAliasMatch "(?x)^/(.*/(HEAD | \ info/refs | objects/(info/[^/]+ | [0-9a-f]{2}/[0-9a-f]{38} | pack/pack-[0-9a-f]{40}\.(pack|idx)) | git-(upload|receive)-pack))$" \ /usr/lib/git-core/git-http-backend/$1# 其余的请求,执行gitweb.cgiScriptAlias / /usr/share/gitweb/gitweb.cgi
另外的思路不打算仔细看了,回去走hooks的路吧。下面附上一些很好的文章:
使用Smart HTTP和Gitweb搭建简易个人git服务器
git-http-backend(1) Manual Page
git官网关于gitweb的手册
再谈git的http服务-权限控制gitweb版(未成功)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。