一种SVN代码检测方法及其系统技术方案

技术编号:15391348 阅读:39 留言:0更新日期:2017-05-19 04:42
本发明专利技术涉及一种SVN代码的检测方法及其系统,该方法包括:对用户发送的SVN代码提交指令进行延迟处理;接收用户输入的经延迟处理后的SVN代码提交指令;读取SVN代码提交指令对应的SVN代码;调用预先配置的静态代码检查工具对SVN代码进行检验;根据检验结果确定是否执行SVN提交指令。本发明专利技术实施例通过在用户在SVN系统中进行上传代码时,主动对提交的代码进行检测,并根据检测结果判断是否执行上传操作,从而解决了检测需要用户主动执行,以及SVN系统下的代码库累计大量的错误代码文件的问题,从而提高提交的SVN代码的正确性以及准确性。

SVN code detecting method and system thereof

The present invention relates to a method and system for detecting a SVN code, the method comprising: submitting instructions sent to the user's delay in processing SVN code; the delay after processing SVN code instructions submitted to receive user input; read SVN code instructions submitted to the corresponding SVN code; use static code checking tool pre configured for SVN code of inspection; according to the test results to determine whether the implementation of SVN submission instructions. The embodiment of the invention in the user to upload code in the SVN system, take the initiative to detect the submitted code, and according to the test results to determine whether the implementation of upload operation, so as to solve the needs of users and implementation of active detection, the SVN system under the code base accumulated a lot of error code files, so as to improve the SVN submission the correctness and accuracy of code.

【技术实现步骤摘要】
一种SVN代码检测方法及其系统
本专利技术属于代码检测领域,尤其涉及一种SVN代码检测方法及其系统。
技术介绍
Subversion(以下简称SVN)是一种开放源代码的版本控制系统,用户通过在SVN系统下,可多用户对同一代码进行编辑以及修改操作,从而大大提高了软件开发的进度。因此,由于多人同时编译致使SVN系统下的代码文件被频繁提交,而每次提交将有可能为代码引入新的错误,而用户在提交前每次都主动对代码进行自检,则大大降低了用户的工作效率。另一方面,用户对于自身编写的代码往往难以发现其中的错误,因此自检后还是会将包含大量的错误代码文件上传,导致SVN系统的代码库积累大量的错误代码文件,增大了修改的难度。
技术实现思路
本专利技术实施例的目的在于提供一种SVN代码的检测方法及其系统,旨在解决由于SVN系统下的由多人同时对代码进行编写完成并提交时,检测操作需要用户主动实施,而降低了用户的提交效率,并且当错误代码没有经过检测就提交到SVN系统中,将使得错误累计,使得后期的修改难度增大。本专利技术实施例是这样实现的,一种SVN代码的检测方法,所述方法包括:对用户发送的SVN代码提交指令进行延迟处理;接收用户输入的经延迟处理后的SVN代码提交指令;读取所述SVN代码提交指令对应的SVN代码;调用预先配置的静态代码检查工具对所述SVN代码进行检验;根据检验结果确定是否执行所述SVN提交指令。第二方面,本专利技术实施例提供一种SVN代码的检测系统,所述检测系统包括:提交指令延迟模块,用于对用户发送的SVN代码提交指令进行延迟处理;提交指令接收模块,用于接收用户输入的经延迟处理后的SVN代码提交指令;SVN代码读取模块,用于读取所述SVN代码提交指令对应的SVN代码;SVN代码检测模块,用于调用预先配置的静态代码检查工具对所述SVN代码进行检验;提交结果确定模块,用于根据检验结果确定是否执行所述SVN提交指令。实施本专利技术实施例提供的一种SVN代码的检测方法及其系统具有以下有益效果:本专利技术实施例通过用户在SVN系统中进行代码上传操作时,主动对提交的代码进行检测,并根据检测结果判断是否执行上传操作,从而解决了检测操作需要用户主动执行,以及SVN系统下的代码库可能累计大量的错误代码文件的问题。与现有技术相比,本专利技术实施例中SVN系统下对代码文件进行提交操作时,不再是直接进行提交操作,而是在接收到提交指令后,系统自动实行检测功能,确保提交的文件是正确的,从而提高了上传的文件的正确性。另一方面,由于代码检测成功才进行上传,避免了乱提交以及错提交的情况,而使得SVN系统的代码库累计大量的错误,不利于后期的修改,可见,本专利技术实施例有效降低后期代码修改的难度,使得编译人员更容易发现代码文件的漏洞。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种SVN代码的检测方法的流程图;图2是本专利技术另一实施例提供的一种SVN代码的检测方法的流程图;图3是本专利技术实施例提供的一种SVN代码的检测系统的结构框图;图4是本专利技术另一实施例提供的一种SVN代码的检测系统的结构框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例通过在用户在SVN系统中进行上传代码时,主动对提交的代码进行检测,并根据检测结果判断是否执行上传操作,从而解决了检测需要用户主动执行,以及SVN系统下的代码库累计大量的错误代码文件的问题,从而提高提交的SVN代码的正确性以及准确性。在本专利技术实施例中,流程的执行主体为SVN代码的检测系统。所述SVN代码的检测系统可为一应用程序,安装于SVN系统中;也可作为一外界设备与SVN控制系统进行连接,对其提交的SVN代码进行自动检测。图1示出了本专利技术实施例提供的SVN代码的检测方法的实现流程图,详述如下:在S101中,对用户发送的SVN代码提交指令进行延迟处理。在本实施例中,所述SVN代码为SVN系统中的代码文件。在本实施例中,由于用户在SVN系统下进行提交操作时,将通过输入提交命令的名称来调用该提交命令,而该提交命令对应的脚本为直接执行提交操作。为了实现用户发起提交时,自动实行代码检测,需要将该提交指令对应的脚本进行修改,从而延迟代码提交操作的时机。可选地,将SVN代码提交指令对应的提交脚本的文件名修改,举例性地,该提交脚本的文件名为“upload”,则将该脚本的名称修改为“delay-upload”。并新建一执行本流程的脚本,其文件名与提交脚本的原文件名一致,在本示例中为“upload”。因此,用户在调用SVN代码提交指令时,将直接执行更名后的脚本步骤流程,从而使得提交操作进行了延迟。在S102中,接收用户输入的经延迟处理后的SVN代码提交指令。在本实施例中,用户在编译完成后,将调用SVN代码提交指令,而该SVN代码提交指令为经延迟处理后的SVN代码提交指令,SVN代码的检测系统接收到该指令后,并不立即对SVN代码进行提交操作,而是开始本实施例所述的方法对SVN代码进行进一步的校验。在S103中,读取所述SVN代码提交指令对应的SVN代码。在本实施例中,用户提交的SVN代码可为多个代码文件,检测客户端将读取SVN代码提交指令所对应的所有SVN代码。在S104中,调用预先配置的静态代码检查工具对所述SVN代码进行检验。在本实施例中,对获取的SVN代码进行检测操作,利用SVN代码检测系统中预先配置的静态代码检测工具,对SVN代码的正确性以及完整性进行校验,以便判断SVN代码是否有误。举例性地,所述预先配置的静态代码检测工具为cppcheck检测工具,所述SVN代码的编译语言为C语言或C++语言。当检测客户端接收到该SVN代码,将通过cppcheck检测工具对该代码进行静态检测,即遍历运行所述SVN代码,判断是否可正确运行并得出相应结果。在S105中,根据检验结果确定是否执行所述SVN提交指令。在本实施例中,当SVN代码经过检测算法的检测后,并未发现错误,则判断所述SVN代码正确,可进行上传操作。当存在多个SVN代码检测通过,则将所有通过检测的SVN代码作为一个整体进行上传。在本实施例中,将所述SVN代码提交至SVN系统中的代码库。代码库作为公共的代码资源库,各用户在该代码库获取代码以及提交编写完毕的代码,从而实现多用户同时编辑SVN代码的功能。可选地,所述代码库对提交的SVN代码进行检测,以便于向所述SVN代码的检测客户端发送检测报告。若所述SVN代码正确,则发送代码正确指令;若所述SVN代码错误,则发送代码错误指令以及上传失败消息。在本实施例中,在代码库进一步对SVN代码进行检测,从而提高SVN代码的准确率。由于SVN代码存在多人同时编译的情况,因此在提交过程中,代码库中的其他代码也有可能已被修改,与上传的SVN代码的内容有冲突的部分。因此,通过在代码库进行检测,则有效避免这种本文档来自技高网...
一种SVN代码检测方法及其系统

【技术保护点】
一种SVN代码的检测方法,其特征在于,所述SVN代码的检测方法包括:对用户发送的SVN代码提交指令进行延迟处理;接收用户输入的经延迟处理后的SVN代码提交指令;读取所述SVN代码提交指令对应的SVN代码;调用预先配置的静态代码检查工具对所述SVN代码进行检验;根据检验结果确定是否执行所述SVN提交指令。

【技术特征摘要】
1.一种SVN代码的检测方法,其特征在于,所述SVN代码的检测方法包括:对用户发送的SVN代码提交指令进行延迟处理;接收用户输入的经延迟处理后的SVN代码提交指令;读取所述SVN代码提交指令对应的SVN代码;调用预先配置的静态代码检查工具对所述SVN代码进行检验;根据检验结果确定是否执行所述SVN提交指令。2.根据权利要求1所述的SVN代码的检测方法,其特征在于,所述根据检验结果确定是否执行所述SVN提交指令包括:若检验所述SVN代码中未发生错误,则执行所述SVN提交指令;若检验所述SVN代码中发生错误,则终止执行所述SVN提交指令。3.根据权利要求2所述的SVN代码的检测方法,其特征在于,所述若检验所述SVN代码中发生错误,则终止执行所述SVN提交指令之后还包括:将所述SVN代码中发现的错误显示给用户。4.根据权利要求1-3所述的SVN代码的检测方法,其特征在于,所述对用户发送的SVN代码提交指令进行延迟处理包括:将Linux环境下提交代码使用的svn命令修改为sys_svn命令,并新增第二svn命令。5.根据权利要求4所述的SVN代码的检测方法,其特征在于,所述读取所述SVN代码提交指令对应的SVN代码具体为:解析所述SVN代码提交指令对应的路径,获取所述路径下的SVN代码列表;检测所述路径下的SVN代码列表中的SVN代码的提交状态特征值;根据所述提交状态特征值确定SVN代码提交指令对应的SVN代码。6.一种SVN代码的检测系统,其特征在于,所述SVN代码的...

【专利技术属性】
技术研发人员:朱新田
申请(专利权)人:深圳市恒扬数据股份有限公司
类型:发明
国别省市:广东,44

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

1