一种适用于代码仓库中的针对查询相关代码的commit查询方法

    公开(公告)号:CN116360843A

    公开(公告)日:2023-06-30

    申请号:CN202310290279.0

    申请日:2023-03-23

    IPC分类号: G06F8/71 G06F8/658 G06F16/13

    摘要: 本发明涉及计算机技术领域,公开一种适用于代码仓库中的针对查询相关代码的commit查询方法,对初始版本的代码仓库进行遍历,将所有代码文件写入增量索引中并记录最新一次提交的commitID,当代码仓库版本更新时,获取版本更新后最新一次的提交的commitID,将其记录与此次提交之前记录的commitID提交进行比较,得到出现新增、删除和修改的代码文件,并更新到增量索引中。最后通过增量索引,完成对代码仓库的搜索、查询和管理。利用增量索引完成对代码仓库版本更新时新增、删除或修改的代码文件的记录和管理,能够有效地针对代码仓库的版本更新相关问题,更好地完成版本更新中出现修改的代码文件的标记和查询任务,对版本更新中不同版本的代码仓库中的代码文件进行管理。

    一种功能相同但源码不同的代码跟踪序列的新对齐方式

    公开(公告)号:CN118689752A

    公开(公告)日:2024-09-24

    申请号:CN202410918064.3

    申请日:2024-07-10

    摘要: 本发明提供一种功能相同但源码不同的代码跟踪序列的新对齐方式,属于动态软件分析领域,所述代码跟踪序列对齐方式包括获取代码跟踪序列、对齐尽可能多的序列对、对齐标准输入的序列对并以其为基准扩充对齐,获取代码跟踪序列使用llvm插桩工具,编写插桩程序,获取代码运行中的所有信息,对齐尽可能多的序列对通过使用尼德曼‑翁施算法获得最长的序列对,对齐标准输入的序列对并以其为基准扩充对齐,通过广度优先遍历算法尝试对齐,并使用sentence‑bert,下文简称为SBERT,一种使用了孪生网路的预训练模型模型而不是简单的变量数据改变来进行计算是否对齐,以生成对齐序列,这种方法可以消除掉错误对齐结果,并对齐部分本应对齐但没有对齐的序列对。

    一种基于提交消息以及代码的学生作业批改方法

    公开(公告)号:CN116502620A

    公开(公告)日:2023-07-28

    申请号:CN202310275430.3

    申请日:2023-03-21

    IPC分类号: G06F40/194 G06F8/75 G06Q50/20

    摘要: 本发明涉及计算机技术领域,公开一种基于提交消息以及代码的学生作业批改方法。对提交历史信息进行处理,分别对学生程序和参考程序提取各自的提交消息并对提交消息进行简单过滤;计算学生提交消息以及参考程序间的相似度;计算提交消息的匹配关系和相似度,将学生的每次提交消息文本求平均得出学生程序提交消息总相似度;对学生程序代码以及参考程序代码中的每个文件进行检测,计算出匹配的总行数,根据行数占比算出每个文件代码相似度,将学生的每次提交消息文本求平均得出学生程序代码总相似度;依据得到的学生提交消息总相似度以及代码总相似度建立线性模型,同时利用最小二乘法线性回归得到最终的参数从而计算出最后的学生分数。