CodeDEV-GIT Server是如何实现git智能协议的
开始
在介绍部分中,我们已经了解到CodeDEV通过workhorse来实现不同模块的工作协同管理。那么,workhorse具体是如何实现git智能协议的呢?
在workhorse中,当通配符路由匹配到路由后缀为.git
的请求时,会触发workhorse鉴权机制。鉴权通过后,请求会被直接转发到CodeDEV-GIT Server,然后CodeDEV-GIT Server会根据请求类型判断是需要执行git-upload-pack
还是git-receive-pack
操作。
此外,对于SSH协议请求,workhorse同样会执行鉴权机制,然后将请求转发到CodeDEV-GIT Server。CodeDEV-GIT Server随后会根据请求类型决定执行git-upload-pack
还是git-receive-pack
操作。
鉴权机制
在CodeDEV-GIT Server中,鉴权过程完全由workhorse负责实现。workhorse会分析请求的头部信息来确定是否需要进行鉴权操作。当确认需要鉴权时,workhorse会基于请求中的头部信息进行具体的鉴权处理。