[发明专利]版本库复制方法及系统有效
| 申请号: | 201811641123.8 | 申请日: | 2018-12-29 |
| 公开(公告)号: | CN109683955B | 公开(公告)日: | 2022-07-05 |
| 发明(设计)人: | 李军 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
| 主分类号: | G06F8/71 | 分类号: | G06F8/71 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
| 地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 版本 复制 方法 系统 | ||
本发明实施例提供了一种版本库复制方法及系统,可以获得对目标版本库进行复制的指令,其中,目标版本库中各版本的代码文件和目标版本库的各复制版本库中各版本的代码文件均位于第一对象目录;根据指令获得目标版本库的元数据;新建第一复制版本库,根据目标版本库的元数据生成第一复制版本库的元数据,以使第一复制版本库的对象目录指向第一对象目录。本发明的第一复制版本库的对象目录指向第一对象目录,因此在对第一复制版本库的某版本的代码文件进行处理时,可以根据该版本的代码文件的文件名称从第一对象目录中找到相应的代码文件并进行处理。本发明无需拷贝代码文件,代码库的复制过程更加快捷,减少了对版本管理服务器存储空间的占用。
技术领域
本发明涉及代码版本控制领域,特别涉及版本库复制方法及系统。
背景技术
在技术人员编写代码的过程中,常由于各种需要多次对代码进行修改,因此对代码的版本进行管理尤为重要。
Git是一个开源的分布式代码版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。如图1所示,用户A可以在Gitlab服务器中注册自己的远程仓库,即图1中的用户A的版本库。该版本库中包括各版本的代码文件、提交历史等。用户A可以将用户A的版本库中将版本库中的一个或多个版本代码文件等克隆到用户A的计算机中。相应的,用户A在其计算机中对代码文件进行修改后,还可以将修改的代码文件上传至Gitlab服务器中以更新自己的版本库。当用户B希望复制用户A的版本库时,用户B需要将用户A的版本库中的各版本的代码文件复制到用户B的版本库中,以便于对复制的代码文件进行克隆以及修改,并将修改的代码文件再更新到用户B的版本库中。
由于代码文件一般较多,因此现有技术进行版本库复制时需要复制较多的代码文件,复制速度较慢且占用了Gitlab服务器较多的存储空间。
发明内容
有鉴于此,本发明提供一种版本库复制方法及系统,以提高版本库复制速度及减小对存储空间的占用。
为了实现上述发明目的,本发明提供以下技术方案:
一种版本库复制方法,所述方法包括:
获得对目标版本库进行复制的指令,其中,所述目标版本库中各版本的代码文件和所述目标版本库的各复制版本库中各版本的代码文件均位于第一对象目录;
根据所述指令获得所述目标版本库的元数据;
新建第一复制版本库,根据所述目标版本库的元数据生成所述第一复制版本库的元数据,以使所述第一复制版本库的对象目录指向所述第一对象目录。
可选的,所述元数据包括:版本序列,所述根据所述目标版本库的元数据生成所述第一复制版本库的元数据,以使所述第一复制版本库的对象目录指向所述第一对象目录,包括:
将所述目标版本库的版本序列确定为第一复制版本库的版本序列,以使所述第一复制版本库的对象目录指向所述第一对象目录。
可选的,所述版本序列包括:版本库的分支名、对版本库中代码进行修改的修改标识、所述修改标识的先后顺序、所述修改标识对应的分支名;
和/或,所述目标版本库的元数据还包括:所述目标版本库的名称、所述目标版本库的描述、所述目标版本库的远程关联仓库中的至少一种。
可选的,还包括:
接收对所述第一复制版本库的更新请求,所述更新请求中携带有用户对所述第一复制版本库中的第一版本的代码进行修改后得到的第二版本的代码;
将所述第二版本的代码保存到所述第一对象目录中。
可选的,在所述将所述第二版本的代码保存到所述第一对象目录中之后,所述方法还包括:
根据所述更新请求对所述第一复制版本库的版本序列进行更新。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811641123.8/2.html,转载请声明来源钻瓜专利网。





