自动递交方法、装置及系统与流程

文档序号:17488487发布日期:2019-04-23 20:11阅读:242来源:国知局
自动递交方法、装置及系统与流程

本申请涉及软件技术领域,尤其涉及自动递交方法、装置及系统。



背景技术:

在软件使用过程中通常需要对源代码执行更新操作,为了验证更新后的源代码是否正确,需要对更新后的源代码执行编译操作和测试操作,并在测试操作通过后递交至服务器。

在对更新后源代码执行编译操作和测试操作过程中,开发人员需要使用多类辅助工具。例如,引入技术支持工具实现项目流程管理,引入编译工具实现对更新后的源代码执行编译操作,引入测试工具实现对编译后源代码执行测试操作等等。

对于开发人员而言,除了完成源代码开发操作外,还需要学习和操作多种辅助工具则会导致源代码的递交效率较低。



技术实现要素:

鉴于此,本申请提供自动递交方法、装置及系统,可以自动编译、测试及递交文件,从而降低开发人员的工作量,提高源代码的递交效率。

为了实现上述目的,本申请提供下述技术特征:

一种自动递交方法,包括:

在更新源代码后的更新文件标识集中确定待递交文件标识集;

利用预设关联关系确定所述待递交文件标识集关联的工程标识集;

对所述工程标识集对应的工程集执行批量编译操作和批量测试操作;

在所述工程集测试通过后,发送所述待递交文件标识集对应的待递交文件集至服务器。

可选的,所述更新文件标识集包括一个或多个更新文件的文件标识,以及,用于表示更新文件所采用更新操作的文件标签;其中,文件标签为修改标签、删除标签、添加标签、缺失标签、无版本控制标签中的一种;

则所述在更新源代码后的更新文件标识集中确定待递交文件标识集,包括:

提供用于显示所述更新文件标识集的显示界面,以供用户对所述更新文件标识集中的文件标识执行选择操作;

在接收所述选择操作对应的选择完成指令后,将所述选择完成指令指示的一个或多个文件标识确定为所述待递交文件标识集。

可选的,所述预设关联关系包括源代码中各个文件标识与工程标识之间的关联关系,则利用预设关联关系确定所述待递交文件标识集关联的工程标识集,包括:

从所述预设关联关系中,确定所述待递交文件标识集中各个文件标识关联的一个或多个工程标识;

对各个文件标识关联的一个或多个工程标识执行汇总和去重操作,获得所述待递交文件标识集对应的工程标识集。

可选的,所述对所述工程标识集对应的工程集执行批量编译操作和批量测试操作包括:

利用所述工程标识集确定工程集,并划分工程集为本地工程集和远端工程集;

对于本地工程集调用编译工具对所述本地工程集执行批量编译操作,调用测试工具对编译后本地工程集执行批量测试操作,并获得测试结果;

对于远端工程集发送远端工程集至服务器,由服务器编译工程集并开启工程集中各个工程对应的启动项,重启服务器并依据重启结果确定测试结果。

可选的,在对所述工程标识集对应的工程集执行批量编译操作和批量测试操作之前,还包括:

将所述更新文件标识集排除所述待递交文件标识集后剩余的文件标识,确定为非递交文件标识集;

对所述非递交文件标识集对应的非递交文件集执行备份操作,获得备份文件集;

对所述非递交文件集执行与服务器同步操作。

可选的,所述对所述非递交文件集执行与服务器同步操作,包括:

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述服务器下载文件标识对应的文件至所述非递交文件集,并替换所述非递交文件集中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集;

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则删除所述非递交文件集中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集;

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

可选的,在所述发送所述待递交文件标识集对应的待递交文件集至服务器之后,还包括从所述备份文件集恢复所述非递交文件集;

从所述备份文件集恢复所述非递交文件集,具体包括:

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则删除同步操作中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则删除同步操作中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述备份文件集还原该文件标识对应的文件。

可选的,还包括:

若所述工程集中至少一个工程未测试通过,则调用代码检查工具来检查代码并显示检查结果,以供开发人员利用检查结果重新更新源代码,并再次执行如权利要求1所述的自动递交方法。

一种自动递交装置,包括:

第一确定单元,用于在更新源代码后的更新文件标识集中确定待递交文件标识集;

第二确定单元,用于利用预设关联关系确定所述待递交文件标识集关联的工程标识集;

批量操作单元,用于对所述工程标识集对应的工程集执行批量编译操作和批量测试操作;

发送单元,用于在所述工程集测试通过后,发送所述待递交文件标识集对应的待递交文件集至服务器。

一种电子设备,该电子设备处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的自动递交方法。

一种存储介质,所述存储介质用于存储软件程序,该软件程序可用于实现所述的自动递交方法。

通过以上技术手段,可以实现以下有益效果:

本申请将实现项目流程管理的技术工具,编译操作所需使用的编译工具,测试操作所需使用的测试工具,以及代码检测所需使用的检测工具由开发设备统一管控,以便开发人员可以尽量减少于辅助工具上的繁琐操作,以实现自动递交工作。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例公开的一种自动递交系统的结构示意图;

图2为本申请实施例公开的一种自动递交方法的流程图;

图3为本申请实施例公开的一种自动递交装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请提供了一种自动递交系统,参见图1,自动递交系统包括开发设备100和服务器200。

可以理解的是,服务器200存储有项目对应的源代码,项目对应的源代码包括多个工程,每个工程包括多个文件。

开发设备100从服务器200获取源代码,并对源代码中一个或多个文件执行更新操作,获得更新后源代码。

开发人员于开发设备100更新源代码过程中,会为各个更新文件赋予文件标签,以表示各个更新文件对应的更新情况。其中文件标签包括:修改标签、删除标签、添加标签、缺失标签、无版本控制标签。下面对各个文件标签的情况进行详细说明。

若开发人员于开发设备中对源代码中一文件执行修改操作,则为该文件赋予修改标签,以表示该文件相对于源代码执行修改操作。

若开发人员于开发设备中对源代码中一文件执行删除操作,则为该文件赋予删除标签,以表示该文件相对于源代码一文件执行删除操作;删除操作前开发设备会发送删除指令至服务器,以告知服务器后续会删除该文件(但服务器还保留有该文件)。

若开发人员于开发设备中对源代码添加一新文件,则为该文件赋予添加标签,以表示该文件相对于源代码执行添加操作。

若开发人员于开发设备中对源代码中一文件执行移动至垃圾箱操作,但并未发送删除指令至服务器,则为该文件赋予缺失标签,表示相对于源代码而言该文件缺失。

若开发人员于开发设备中对源代码中一文件执行更新操作,但未对该文件赋予标签,则无法确定该文件的文件标签,所以开发设备自动为该文件赋予无版本控制标签,以表示不清楚该文件的标签。

项目的源代码对应一开发目录,开发目录包括该项目包括的多个工程标识,每个工程标识对应该工程包括的多个文件标识。若源代码中一文件被执行更新操作,则该文件被赋予文件标签。

为了避免开发人员学习和使用各种辅助工具来执行编译操作和测试操作,本申请将实现项目流程管理的技术工具,编译操作所需使用的编译工具,测试操作所需使用的测试工具,以及代码检测所需使用的检测工具由开发设备统一管控,以便开发人员可以尽量减少于辅助工具上的繁琐操作,以实现自动递交工作。

下面介绍本申请提供的自动递交方法,应用于图1所示的自动递交系统。参见图2,自动递交方法包括以下步骤:

步骤s201:开发设备在更新源代码后的更新文件标识集中确定待递交文件标识集。

现有技术中更新后源代码中所有更新文件,均需要提交至服务器,可是在实际应用过程中申请人发现,在一些情况下开发人员具有不需要递交所有更新文件的需求,但是现有技术无法满足这一需求。

为此,本实施例开发设备100会确定更新文件标识集,并提供显示界面以用来显示更新文件标识集,以便用户通过显示界面来选择性勾选需要递交至服务器的文件标识。

根据本申请提供的一个实施例,步骤s201可以包括以下步骤s2011~步骤s2013:

步骤s2011:开发设备100确定更新文件标识集。

调用版本管理工具(svn)获取开发目录中包含修改标签(m)、删除标签(d)、添加标签(a)、缺失标签(!)或无版本控制标签(?)的多个文件标识。

具有上述任一种文件标签的文件即为更新文件,因此该多个文件标识均为更新文件的文件标识;生成包含该多个文件标识的更新文件标识集。更新文件标识集可以采用列表形式来展现,当然还可以采用其它方式,对此不做限定。

步骤s2012:开发设备100提供用于显示所述更新文件标识集的显示界面,以供用户对所述更新文件标识集中的文件标识执行选择操作。

开发设备展示显示界面,以向用户展示更新文件标识集,且,显示界面中每个文件标识均可以被勾选。用户可以依据本次更新操作的实际情况,以决定本次提交至服务器的多个文件,并在显示界面中对文件标识进行选择操作。

本申请由开发设备来集成管控各种辅助工具,由用户操作的步骤仅有步骤s2012,即,人工自主选择待递交文件标识集。这可以方便用户来根据实际情况向服务器递交文件,提高开发人员的自主性和灵活性。

步骤s2013:开发设备100在接收所述选择操作对应的选择完成指令后,将所述选择完成指令指示的一个或多个文件标识确定为所述待递交文件标识集。

显示界面还具有一个表示选择完成的对话框,在用户选择结束后,可以触发选择结束的对话框,开发设备便会接收到选择操作对应的选择完成指令。

选择完成指令包含用户通过显示界面中的更新文件标识集中勾选的一个或多个文件标识,该一个或多个文件标识组成待递交文件标识集。

步骤s202:开发设备确定非递交文件集并对非递交文件集执行备份和同步操作。

根据本申请提供的一个实施例,步骤s202可以包括以下步骤:

步骤s2021:将所述更新文件标识集排除所述待递交文件标识集后剩余的文件标识,确定为非递交文件标识集。

更新文件标识集包括本次更新对应的所有更新文件的文件标识,排除上述用户勾选的待递交文件标识集后,剩余的文件标识便是本次无需提交至服务器的一个或多个文件标识,该一个或多个文件标识称为非递交文件标识集。

步骤s2022:对所述非递交文件标识集对应的非递交文件集执行备份操作,获得备份文件集。

由于非递交文件标识集对应的非递交文件集已经执行更新操作,非递交文件集与服务器中源代码是不一致的,为了保证与服务器的软件环境一致性,步骤s2023会执行与服务器的同步操作,以同步非递交文件集与服务器版本保持一致。

由于与服务器同步后会丢失开发设备自身的非递交文件集,所以为了保护非递交文件集,在步骤s2023之前先对非递交文件集执行备份操作,以备份到开发设备中其它文件夹下,获得备份文件集。

步骤s2023:对所述非递交文件集执行与服务器同步操作。

非递交文件标识集包括多个文件标识,不同文件标识的文件标签不尽相同,下面对不同文件标签的同步操作,进行展开描述。

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述服务器下载文件标识对应的文件至所述非递交文件集,并替换所述非递交文件集中该文件标识对应的文件。

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则删除所述非递交文件集中该文件标识对应的文件。

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

现有技术中不支持关联编译和测试,在更新源代码后仅仅只会对当前工程进行编译和测试,并未对引用更新文件的其它工程进行关联编译和测试,所以可能会出现更新文件无法适用于所有工程的问题。

为此,本申请提供了步骤s203,可以获得受待递交文件标识集影响的各个工程,后续对各个工程进行编译操作和测试操作,以保证所有工程均测试通过。

接步骤s201或s202进入步骤s203:开发设备利用预设关联关系确定所述待递交文件标识集关联的工程标识集。

开发设备存储有预设关联关系,预设关联关系包括源代码中各个文件标识与工程标识之间的关联关系。本步骤s203可以包括以下步骤:

步骤s2031:从所述预设关联关系中,确定所述待递交文件标识集中各个文件标识关联的一个或多个工程标识。

步骤s2032:对各个文件标识关联的一个或多个工程标识执行汇总和去重操作,获得所述待递交文件标识集对应的工程标识集。

汇总和去重操作后获得的工程标识集,包括受待递交文件标识集影响的所有工程标识。若工程标识集对应的工程通过测试,则表示待递交文件标识集对应的待递交文件集是正确无误的,能够适用于受其影响的各个工程。

接步骤s203进入步骤s204:对所述工程标识集对应的工程集执行批量编译操作和批量测试操作。

根据本申请提供的一个实施例,本步骤可以包括以下步骤:

步骤s2041:利用所述工程标识集确定工程集,并划分工程集为本地工程集和远端工程集。

通常情况下,一项工程分为近端文件(也称为本地端)和远端文件(也称为服务端),通常情况下一次更新操作涉及的更新文件既包括近端文件也包括远端文件。

近端文件对应的近端工程可以于本地执行编译和测试,远端文件对应的远端工程必须在服务器上执行编译和测试。为了对工程标识集对应的工程集进行测试,将工程集分为本地工程集和远端工程集。

可以理解的是,本地工程和远端工程的工程标识不同,通过工程标识可以简单方便的区分从工程集中区分出本地工程集和远端工程集,该过程已为成熟技术,在此不再赘述。

步骤s2042:对于本地工程集调用编译工具对所述本地工程集执行批量编译操作,调用测试工具对编译后本地工程集执行批量测试操作,并获得本地测试结果。

开发设备针对本地工程集,会调用编译工具对本地工程集执行批量编译操作,可以采用编译工具为finalbuilder,finalbuilder编译工具具有较高的编译效率。

开发设备可以调用测试工具对编译后本地工程集,执行批量测试操作,并获得本地测试结果。

步骤s2043:对于远端工程集发送远端工程集至服务器,接收服务器发送的远端测试结果。

对于远端工程集发送远端工程集至服务器,由服务器编译工程集并开启工程集中各个工程对应的启动项,重启服务器并依据重启结果确定测试结果,接收服务器发送的远端测试结果。

开发设备会发送远端工程集至服务器,服务器接收远端工程集后会对远端工程集进行编译操作,以便后续启动过程中使用编译后远端工程集。

服务器还会更新启动项配置文件,在启动项配置文件中开启远端工程集中各个工程对应的启动项,以便后续重启服务器过程中可以启动远端工程集对应的工程。

若能够成功重启服务器,则表示远端工程集是正确的,也即测试通过;若不能够重启服务器则表示远端工程集有问题的,也即测试未通过。

服务器在测试完毕后,可以发送远端测试结果至开发设备,以便开发设备获得远端测试结果。

步骤s205:若工程集未测试通过,则调用代码检查工具来执行修改操作,在修改完毕进入步骤s201。

若本地工程集和远端工程集均测试通过,则表示工程集测试通过,否则表示工程集未测试通过。

若所述工程集中至少一个工程未测试通过,则调用代码检查工具来检查代码并显示检查结果,以供开发人员利用检查结果重新更新源代码,并再次执行自动递交方法。

即,调用代码检查工具来自动化检查,以检查是否遗漏文件或提交错误文件,并显示检查结果,以供开发人员查看,并得知未测试通过的原因,然后执行一些修改操作,并然后重新进入步骤s201重新进行自动递交工作,直到工程集测试通过。

步骤s206:开发设备在所述工程集测试通过后,发送所述待递交文件标识集对应的待递交文件集至服务器。

若本地工程集和远端工程集均测试通过,则表示工程集测试通过。开发设备仅发送待递交文件标识集对应的待递交文件集至服务器,以供服务器利用待递交文件集更新源代码。

步骤s207:开发设备从所述备份文件集恢复所述非递交文件集。

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则删除同步操作中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则删除同步操作中该文件标识对应的文件。

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

关于上述步骤s203中的预设关联关系为开发设备定时生成的,下面介绍预设关联关系的生成过程。

若源代码为delphi语言编写的,则基于delphi语言特性可知,一个文件引用的文件会列在单元文件(.pas文件)的uses关键字下,通过以下步骤实现delphi项目中确定关联关系。

s1:针对项目文件夹下一文件a.pas,轮询项目文件夹下的所有文件,若一文件uses下包含a.pas,则确定该文件引用文件a.pas,获得引用a.pas的文件列表。

s2,根据引用a.pas的文件列表,获取对应的工程。

针对文件列表中每个文件,逐级向上查询文件所在的上一级目录,直至上一级目录为工程文件(.dpr文件)为止,将检索到的工程作为该文件所在的工程标识。在对文件列表中每个文件均执行上述操作后获得多个工程标识。

s3:对s2获得的多个工程标识执行去重操作,获得文件a.pas关联的工程标识集。

s4:保存工程标识集到[a_关联编译.ini]中。

在步骤s203中若待递交文件标识集包含a.pas文件时,可以从[a_关联编译.ini]中确定a.pas文件关联的工程标识集。

上述仅以一个文件为例对确定关联工程标识的过程进行说明,可以理解的是,其它文件也采用同样的处理过程,在此不再一一赘述。需要注意的是:delphi关联编译采用finalbuilder进行编译,能极大提高编译的效率。

若源代码为proc语言编写的,则基于proc语言特性可知,proc编译文件makefile中均配置该工程引用的源文件,通过检索每个工程的makefile文件即可获取关联关系。

s1,针对项目文件夹下每个单元文件a.pc,检索项目下所有工程文件夹下的makefile文件,检索是否引用a.pc,如果引用则确定a.pc文件关联该工程,获得a.pc文件关联的工程标识集。

s2,将a.pc文件关联的工程标识集记录到[a_关联编译.ini]中。

在步骤s203中若待递交文件标识集包含a.pas文件时,可以从[a_关联编译.ini]中确定a.pas文件关联的工程标识集。

通常情况下,项目文件夹之间的关联关系相对稳定,由于获取关联关系的过程比较耗时耗费资源,所以开发设备通常会每天定时获取当前关联关系,并更新历史关联关系。关联关系通常存储在固定位置,以供开发设备来访问时使用。

通过上述实施例可以得知本实施例具有下述有益效果:

第一,本申请将实现项目流程管理的技术工具,编译操作所需使用的编译工具,测试操作所需使用的测试工具,以及代码检测所需使用的检测工具由开发设备统一管控,以便开发人员可以尽量减少于辅助工具上的繁琐操作,以实现自动递交工作。

第二,支持对待递交文件标识集的关联工程进行关联编译操作和测试操作,从而提升对待递交文件标识集的检测的完全性,以保证待递交文件集于各个工程的适用性。

第三,允许开发人员依据实际情况来选择性提交文件至服务器,对于非提交文件执行备份操作和同步操作,以同步服务器的软件环境。在测试通过后还原非提交文件,以保证开发设备上非递交文件的完整性。

第四,支持本地工程集测试和远端工程集分分开测试,并提供了测试依据。

参见图3,本申请还提供了一种自动递交装置,包括:

第一确定单元31,用于在更新源代码后的更新文件标识集中确定待递交文件标识集;

第二确定单元32,用于利用预设关联关系确定所述待递交文件标识集关联的工程标识集;

批量操作单元33,用于对所述工程标识集对应的工程集执行批量编译操作和批量测试操作;

待递交文件发送单元34,用于在所述工程集测试通过后,发送所述待递交文件标识集对应的待递交文件集至服务器。

其中,所述更新文件标识集包括一个或多个更新文件的文件标识,以及,用于表示更新文件所采用更新操作的文件标签;其中,文件标签为修改标签、删除标签、添加标签、缺失标签、无版本控制标签中的一种;

则第一确定单元31包括:

提供界面单元311,用于提供用于显示所述更新文件标识集的显示界面,以供用户对所述更新文件标识集中的文件标识执行选择操作;

待递交文件标识集确定单元312,用于在接收所述选择操作对应的选择完成指令后,将所述选择完成指令指示的一个或多个文件标识确定为所述待递交文件标识集。

其中,所述预设关联关系包括源代码中各个文件标识与工程标识之间的关联关系,则第二确定单元32包括:

确定关联工程标识单元321,用于从所述预设关联关系中,确定所述待递交文件标识集中各个文件标识关联的一个或多个工程标识;

汇总去重单元322,用于对各个文件标识关联的一个或多个工程标识执行汇总和去重操作,获得所述待递交文件标识集对应的工程标识集。

其中,汇总去重单元322,包括:

划分单元3221,用于利用所述工程标识集确定工程集,并划分工程集为本地工程集和远端工程集;

本地批量编译测试单元3222,用于对于本地工程集调用编译工具对所述本地工程集执行批量编译操作,调用测试工具对编译后本地工程集执行批量测试操作,并获得测试结果;

远端工程集发送单元3223,用于对于远端工程集发送远端工程集至服务器,由服务器编译工程集并开启工程集中各个工程对应的启动项,重启服务器并依据重启结果确定测试结果。

自动递交装置还包括:

非递交文件标识集确定单元35,用于在对所述工程标识集对应的工程集执行批量编译操作和批量测试操作之前,将所述更新文件标识集排除所述待递交文件标识集后剩余的文件标识,确定为非递交文件标识集;

备份单元36,用于对所述非递交文件标识集对应的非递交文件集执行备份操作,获得备份文件集;

同步单元37,用于对所述非递交文件集执行与服务器同步操作。

其中,同步单元37包括:

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述服务器下载文件标识对应的文件至所述非递交文件集,并替换所述非递交文件集中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集;

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则删除所述非递交文件集中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集;

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述服务器下载该文件标识对应的文件至所述非递交文件集。

自动递交装置还包括:

恢复单元38,用于在所述发送所述待递交文件标识集对应的待递交文件集至服务器之后,从所述备份文件集恢复所述非递交文件集;

其中,恢复单元38包括:

对于所述非递交文件标识集中文件标签为修改标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为删除标签的文件标识,则删除同步操作中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为增加标签的文件标识,则从所述备份文件集还原该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为缺失标签的文件标识,则删除同步操作中该文件标识对应的文件;

对于所述非递交文件标识集中文件标签为无版本控制标签的文件标识,则从所述备份文件集还原该文件标识对应的文件。

自动递交装置还包括:

检查单元39,用于若所述工程集中至少一个工程未测试通过,则调用代码检查工具来检查代码并显示检查结果,以供开发人员利用检查结果重新更新源代码,并再次执行自动递交方法。

通过上述装置可以得知本实施例具有下述有益效果:

第一,本申请将实现项目流程管理的技术工具,编译操作所需使用的编译工具,测试操作所需使用的测试工具,以及代码检测所需使用的检测工具由开发设备统一管控,以便开发人员可以尽量减少于辅助工具上的繁琐操作,以实现自动递交工作。

第二,支持对待递交文件标识集的关联工程进行关联编译操作和测试操作,从而提升对待递交文件标识集的检测的完全性,以保证待递交文件集于各个工程的适用性。

第三,允许开发人员依据实际情况来选择性提交文件至服务器,对于非提交文件执行备份操作和同步操作,以同步服务器的软件环境。在测试通过后还原非提交文件,以保证开发设备上非递交文件的完整性。

第四,支持本地工程集测试和远端工程集分分开测试,并提供了测试依据。

本申请还提供一种电子设备,包括处理器以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的自动递交方法。方法详细过程可以参见图2所示的实施例,在此不再赘述。

本申请还提供一种存储介质,所述存储介质用于存储软件程序,该软件程序可用于实现如图2所示的自动递交方法,详细过程可以参见图2所示的实施例,在此不再赘述。

本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1