[发明专利]拉取IDL文件的方法、装置、计算机设备和存储介质在审
申请号: | 202010789755.X | 申请日: | 2020-08-07 |
公开(公告)号: | CN111949309A | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 邬亮 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F9/448 |
代理公司: | 北京中知法苑知识产权代理有限公司 11226 | 代理人: | 李明 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | idl 文件 方法 装置 计算机 设备 存储 介质 | ||
1.一种拉取IDL文件的方法,其特征在于,包括:
获取接口描述语言IDL文件拉取信息,所述IDL文件拉取信息至少包括分布式版本控制系统git仓库标识、入口IDL文件正则表达式和输出文件夹路径;
至少根据所述git仓库标识和临时文件夹路径生成命令字符串,其中,临时文件夹为预先创建的;
根据生成的命令字符串,调用git命令拉取git仓库到临时文件夹中;
递归解析所述入口IDL文件正则表达式得到需要的IDL文件路径;
根据需要的IDL文件路径和所述输出文件夹路径,从所述临时文件夹拷贝需要的IDL文件。
2.根据权利要求1所述的方法,其特征在于,所述IDL文件拉取信息中还包括git仓库分支标识;
至少根据所述git仓库标识和临时文件夹路径生成命令字符串,包括:
根据所述git仓库标识、git仓库分支标识和临时文件夹路径生成命令字符串;以及
调用git命令拉取git仓库到创建的临时文件夹之后,还包括:
根据所述git仓库分支标识切换到相应的git分支。
3.根据权利要求1或2所述的方法,其特征在于,递归解析所述入口IDL文件正则表达式得到需要的IDL文件路径,包括:
解析入口IDL文件正则表达式得到至少一个入口IDL文件路径;
对于任一入口IDL文件路径,读取所述入口IDL文件路径对应的IDL文件内容;
使用抽象语法树AST解析器解析所述IDL文件内容得到所述IDL文件内容对应的AST;
分析所述IDL文件内容对应的AST得到依赖IDL文件路径;
合并入口IDL文件路径和依赖IDL文件路径,得到需要的IDL文件路径。
4.根据权利要求1所述的方法,其特征在于,根据需要的IDL文件路径和所述输出文件夹路径,从所述临时文件夹拷贝需要的IDL文件,包括:
对比需要的IDL文件路径与临时文件夹路径得到相对IDL文件路径;
拼接输出文件夹路径和相对IDL文件路径得到目标IDL文件路径;
根据需要的IDL文件路径和目标IDL文件路径,从所述临时文件夹拷贝需要的IDL文件。
5.根据权利要求1或4所述的方法,其特征在于,在拷贝需要的IDL文件之后,还包括:
调用文件夹删除函数删除所述临时文件夹。
6.根据权利要求1所述的方法,其特征在于,获取IDL文件拉取信息,包括:
调用自动化程序从配置文件中读取IDL文件拉取信息。
7.一种拉取IDL文件的装置,其特征在于,包括:
获取模块,用于获取接口描述语言IDL文件拉取信息,所述IDL文件拉取信息至少包括分布式版本控制系统git仓库标识、入口IDL文件正则表达式和输出文件夹路径;
生成模块,用于至少根据所述git仓库标识和临时文件夹路径生成命令字符串,其中,临时文件夹为预先创建的;
拉取模块,用于根据所述生成模块生成的命令字符串,调用git命令拉取git仓库到临时文件夹中;
解析模块,用于递归解析所述入口IDL文件正则表达式得到需要的IDL文件路径;
拷贝模块,用于根据需要的IDL文件路径和所述输出文件夹路径,从所述临时文件夹拷贝需要的IDL文件。
8.根据权利要求7所述装置,其特征在于,所述IDL文件拉取信息中还包括git仓库分支标识;
所述装置,还包括切换模块,其中:
所述生成模块,用于根据所述git仓库标识、git仓库分支标识和临时文件夹路径生成命令字符串;
所述切换模块,用于在所述拉取模块调用git命令拉取git仓库到创建的临时文件夹之后,根据所述git仓库分支标识名称切换到相应的git分支。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010789755.X/1.html,转载请声明来源钻瓜专利网。