System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于FTTR的日志管理与版本控制方法、装置、设备及介质制造方法及图纸_技高网

基于FTTR的日志管理与版本控制方法、装置、设备及介质制造方法及图纸

技术编号:41334252 阅读:8 留言:0更新日期:2024-05-20 09:54
本申请公开了一种基于FTTR的日志管理与版本控制方法、装置、设备及介质,涉及软件开发技术领域,用于解决日志信息展示不直观和版本信息检索困难的问题。所述方法应用于FTTR框架中,包括:在无参数的情况下,采用‑‑no‑merges‑‑remotes‑‑reverse选项,显示Git日志;将多个版本号加入初始git.log文件中,获得目标git.log文件;采用‑v<version>选项,显示所述目标git.log文件中指定版本号的详细信息。因此,不仅可以使日志信息展示更加直观,还可以显示指定版本号的详细信息。

【技术实现步骤摘要】

本申请涉及软件开发,提供一种基于fttr的日志管理与版本控制方法、装置、设备及介质。


技术介绍

1、随着科学技术的发展,版本控制系统(version control system,vcs)逐渐成为现代软件开发的基石,其中,分布式版本控制系统git作为最流行的版本控制系统之一,其提供了强大的分支和合并能力。然而,随着项目规模的扩大,git的日志管理和版本回溯功能变得越来越不够直观和高效。

2、特别是在处理大量提交和分支时,会存在以下几个问题:(1)由于传统的git日志展示方式会包含大量的合并记录,因此,容易导致开发者在查看提交历史时难以追踪每个提交的详细信息,进而,使得对特定提交的审查和追溯变得困难、日志信息展示不直观;(2)在git中,由于查找特定版本的详细信息需要执行多个命令或查看多个文件,因此,增加了开发者在历史审查和错误追踪过程中的工作量和复杂性,进而,使得版本信息检索困难;(3)由于传统git在版本回滚和分支管理方面的灵活性有限,因此,如果需要将仓库回溯到特定的历史版本,则需要执行多个命令或手动操作,进而,会引入错误或不必要的复杂性,从而,导致版本控制灵活性受限。


技术实现思路

1、本申请提供一种基于fttr的日志管理与版本控制方法、装置、设备及介质,用于解决日志信息展示不直观和版本信息检索困难的问题。

2、一方面,提供一种基于fttr的日志管理与版本控制方法,应用于fttr框架中,所述方法包括:

3、在无参数的情况下,采用--no-merges--remotes--reverse选项,显示git日志;

4、将多个版本号加入初始git.log文件中,获得目标git.log文件;

5、采用-v<version>选项,显示所述目标git.log文件中指定版本号的详细信息。

6、可选的,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

7、采用--no-merges--remotes--reverse选项,获取一个按提交顺序倒序的日志视图;其中,所述日志视图无合并记录;

8、将所述日志视图经处理后存储至git.log空文件中,获得所述初始git.log文件中。

9、可选的,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

10、采用len(output.strip().split(“\n”))函数,将output变量中的内容拆分为lines行列表,并生成序列号和关键字的映射关系表;

11、采用enumerate(lines)函数,遍历所述lines行列表,生成元素索引和值。

12、可选的,所述将多个版本号加入初始git.log文件中,获得目标git.log文件的步骤,包括:

13、采用mapping.items()函数,对所述映射关系表进行遍历,确定所述映射关系表中是否存在与所述lines行列表匹配的关键字;

14、若确定所述映射关系表中存在与所述lines行列表匹配的关键字,则生成一个包含版本信息的字符串version_line;

15、采用content.insert(i+1,version_line)函数,将所述字符串version_line插入到content列表中的下一行,获得更新后的content列表;

16、采用file.truncate()函数,清空所述初始git.log文件的原本内容,获得第一git.log文件;

17、采用file.writelines(content)函数,将所述更新后的content列表写入所述第一git.log文件中,获得所述目标git.log文件。

18、可选的,所述采用-v<version>选项,显示所述目标git.log文件中指定版本号的详细信息的步骤,包括:

19、针对任一个版本号,采用-v<version>选项,确定所述任一个版本号是否存在于所述映射关系表中;

20、若确定所述任一个版本号存在于所述映射关系表中,则构建git show --no-patch<commit hash>命令;其中,所述git show --no-patch<commit hash>命令与所述任一个版本号的关键字对应;

21、采用subprocess模块执行所述git show --no-patch<commit hash>命令,获得执行结果,并将所述执行结果存储于所述output变量中;

22、根据所述output变量的内容,查找change-id行,并将所述change-id行存储于change_id变量中;

23、展示所述任一个版本号的change-id行、提交日期以及提交人。

24、可选的,在将多个版本号加入初始git.log文件中,获得目标git.log文件之后,所述方法还包括:

25、采用git.log文件名选项,确定git日志中所有提交的版本详细信息,并显示每个提交的版本信息的版本号;

26、采用open函数,显示所述目标git.log文件中的各种信息。

27、可选的,在将多个版本号加入初始git.log文件中,获得目标git.log文件之后,所述方法还包括:

28、针对任一个版本号,使用-reset<version>选项,确定所述任一个版本号是否存在于所述映射关系表;

29、若确定所述任一个版本号存在于所述映射关系表中,则获取所述任一个版本号的关键字;

30、构建git reset--hard<commit hash>命令,其中,所述git reset --hard<commithash>命令与所述任一个版本号的关键字对应;

31、采用subprocess模块执行所述git reset--hard<commit hash>命令,将所述git仓库重置于所述任一个版本号的位置。

32、一方面,提供一种基于fttr的日志管理与版本控制装置,应用于fttr框架中,所述装置包括:

33、日志显示单元,用于在无参数的情况下,采用--no-merges--remotes--reverse选项,显示git日志;

34、文件获得单元,用于将多个版本号加入初始git.log文件中,获得目标git.log文件;

35、版本号显示单元,用于采用-v<version>选项,显示所述目标git.log文件中指定版本号的详细信息。

36、与现有技术相比,本申请的有益效果为:

37、在本申请实施例中,首先,可以在无参数的情况下,采用--no-m本文档来自技高网...

【技术保护点】

1.一种基于FTTR的日志管理与版本控制方法,其特征在于,应用于FTTR框架中,所述方法包括:

2.如权利要求1所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

3.如权利要求1所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

4.如权利要求3所述的方法,其特征在于,所述将多个版本号加入初始git.log文件中,获得目标git.log文件的步骤,包括:

5.如权利要求3所述的方法,其特征在于,所述采用-v<version>选项,显示所述目标git.log文件中指定版本号的详细信息的步骤,包括:

6.如权利要求1所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之后,所述方法还包括:

7.如权利要求3所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之后,所述方法还包括:

8.一种基于FTTR的日志管理与版本控制装置,其特征在于,应用于FTTR框架中,所述装置包括:

9.一种电子设备,其特征在于,所述设备包括:

10.一种存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1-7中任一所述的方法。

...

【技术特征摘要】

1.一种基于fttr的日志管理与版本控制方法,其特征在于,应用于fttr框架中,所述方法包括:

2.如权利要求1所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

3.如权利要求1所述的方法,其特征在于,在将多个版本号加入初始git.log文件中,获得目标git.log文件之前,所述方法还包括:

4.如权利要求3所述的方法,其特征在于,所述将多个版本号加入初始git.log文件中,获得目标git.log文件的步骤,包括:

5.如权利要求3所述的方法,其特征在于,所述采用-v<version>选项,显示所述目标git.lo...

【专利技术属性】
技术研发人员:李鹏程袁俊杰孙建
申请(专利权)人:四川天邑康和通信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1