首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种用Git原生Clone命令克隆指定Commit的方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:北京简单一点科技有限公司

摘要:本发明提供了一种用Git原生Clone命令克隆指定Commit的方法,包括以下步骤:1当用户通过用户原生Git客户端向Git原生服务器发送普通Git命令时,首先用户通过用户原生Git客户端向Git原生服务器发送普通Gitclone命令或者其他git命令;2用户命令拦截器拦截用户命令,若发现用户命令为普通git命令,则不做任何额外处理,并将用户命令发送给Git原生服务器;3Git原生服务器接收用户命令,并将返回信息按照原路径返回至用户原生Git客户端;本发明提供一种可以克隆Git指定Commit的方法,大幅提升在只需要单commit场景下的clone克隆效率。

主权项:1.一种用Git原生Clone命令克隆指定Commit的方法,其特征在于,包括用户原生Git客户端和Git原生服务器,在用户原生Git客户端与Git原生服务器之间设置用户命令拦截器;具有以下步骤:1当用户通过用户原生Git客户端向Git原生服务器发送普通Git命令时,首先用户通过用户原生Git客户端向Git原生服务器发送普通Gitclone命令或者其他git命令;2用户命令拦截器拦截用户命令,若发现用户命令为普通git命令,则不做任何额外处理,并将用户命令发送给Git原生服务器;3Git原生服务器接收用户命令,并将返回信息按照原路径返回至用户原生Git客户端;4当用户通过用户原生Git客户端向Git原生服务器发送包含指定commit信息的gitclone--depth=1命令,假设commitID为A,其中A表示一个40位的真实commitID值;commit信息可以在代码库URL中以特殊标志携带,或者gitclone命令后续版本支持服务器端参数-server-option之后,通过此参数指定;5用户命令拦截器解析到用户的gitclone--depth=1命令,并解析出其中的40位commitID信息A;6用户命令拦截器向git原生服务器查询该commitA是否存在;7Git原生服务器向用户命令拦截器返回查询结果;8如果该commitA不存在,用户命令拦截器向用户原生Git客户端返回错误信息,流程结束;9如果该commitA存在,步骤6在查询操作完成后,不再进行正常的git对象清点来找出最新的commit信息,而是伪造清点结果,直接答复用户原生Git客户端,最新的commit就是用户指定的commitA;10按照gitclone命令的通信协议,gitclone命令接收到步骤9返回的信息,获知Git原生服务器中最新commit的就是commitA,然后会向Git原生服务器发送真正的下载请求,并且在下载请求中告诉Git原生服务器,用户原生Git客户端本地have0commit,wantcommitA,depth=1其中have和want是gitclone命令通信协议中的数据报文字段;11用户命令拦截器收到步骤10中的用户原生Git客户端请求,向Git原生服务器发送数据打包命令,并且强制设定打包深度depth=1,将commitA的代码数据单独打包;12用户命令拦截器收到commitA的代码数据包,并且将后数据包回传至用户原生Git客户端。13用户原生Git客户端接收到步骤12中回传的数据,下载了commitA,并且只有A一个commit;由于在步骤4中gitclone使用了--depth=1参数,故commitA数据可通过用户原生Git客户端数据检验。

全文数据:

权利要求:

百度查询: 北京简单一点科技有限公司 一种用Git原生Clone命令克隆指定Commit的方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。