基于GIT的版本管理方法、装置、设备及可读存储介质与流程

文档序号:19216962发布日期:2019-11-26 01:47阅读:307来源:国知局
基于GIT的版本管理方法、装置、设备及可读存储介质与流程

本发明涉及基于git的版本管理领域,尤其涉及基于git的版本管理方法、装置、设备及可读存储介质。



背景技术:

在项目开发领域,从项目测试到项目上线,项目开发人员或者项目委托方会针对项目提出不同的需求,因为不同的需求,项目往往会出现多个版本,在对多个项目版本进行管理时,项目开发人员会使用git(分布式版本控制系统,是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理)。

而现有的使用git管理项目版本的方法中,当项目版本需要测试时,要把项目版本发送到开发分支(git工作流流程中长期存在的分支),如果有多个项目版本同时测试,且又需要上线其中一个项目版本时,就需要把其他项目版本的相关代码回退,这就使得操作繁琐。



技术实现要素:

本发明的主要目的在于提供一种基于git的版本管理方法、装置、设备及可读存储介质,旨在解决当前多个项目版本同时测试,且又需要上线其中一个项目版本时,就需要把其他项目版本的相关代码回退,使得操作繁琐的技术问题。

为实现上述目的,本发明提供一种基于git的版本管理方法,所述基于git的版本管理方法包括以下步骤:

在接收到项目版本测试请求时,获取所述项目版本测试请求对应的项目版本,及所述项目版本对应的项目文件;

在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件;

在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

可选地,所述在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件的步骤,包括:

在所述项目版本至少为两个时,判断是否存在测试分支;

若不存在测试分支,则调用预设git工具创建测试分支,并执行所述将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件的步骤。

可选地,所述在接收到项目版本测试请求时,获取所述项目版本测试请求对应的项目版本,及所述项目版本对应的项目文件的步骤之后,包括:

在接收到项目需求测试请求时,获取所述项目版本对应的需求文件,通过开发分支创建需求分支,并在所述需求分支上测试所述需求文件;

所述在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本的步骤,包括:

在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,及所述目标项目版本对应的目标项目文件和目标需求文件;

将所述目标项目文件和所述目标需求文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

可选地,所述在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件的步骤之后,包括:

当接收到所述测试分支输出的异常信息时,当接收到所述测试分支输出的异常信息时,获取所述异常信息对应的项目文件,将所述异常信息对应的项目文件发送至所述需求分支,并在所述需求分支上修复所述异常信息对应的项目文件;

在检测到所述异常信息对应的项目文件修复完成时,将修复后的项目文件发送至所述测试分支,并在所述测试分支上进行二次测试。

可选地,所述将所述目标项目文件和所述目标需求文件发送至开发分支,以通过所述开发分支上线所述目标项目版本的步骤之后,包括:

通过所述开发分支创建发布分支,将所述目标项目文件和所述目标需求文件作为上线包发送至所述发布分支;

在所述发布分支上模拟上线环境,并在所述上线环境测试所述上线包;

若所述上线包在所述上线环境测试通过,则将所述上线包发送至主干分支完成项目上线。

可选地,所述若所述上线包在所述上线环境测试通过,则将所述上线包发送至主干分支完成项目上线的步骤之后,包括:

当接收到基于上线后的上线包输出的报警信息时,通过所述主干分支创建修复分支,并将所述上线包发送至所述修复分支,以在所述修复分支上修复所述上线包;

当接收到修复完成提示信息时,将修复后的上线包发送到主干分支,并通过所述主干分支重新上线修复后的上线包。

可选地,所述当接收到修复完成提示信息时,将修复后的上线包发送到主干分支,并通过所述主干分支重新上线修复后的上线包的步骤之后,包括:

当接收到上线完成提示信息时,判断当前是否存在发布分支;

若当前存在所述发布分支,则将修复后的上线包发送到所述发布分支,在所述发布分支上模拟上线环境,并在所述上线环境中测试修复后的上线包;

若当前不存在所述发布分支,则通过所述开发分支创建发布分支,将修复后的上线包发送到所述发布分支,在所述发布分支上模拟上线环境,并在所述上线环境中测试修复后的上线包。

此外,为实现上述目的,本发明还提供一种基于git的版本管理装置,所述基于git的版本管理装置包括:

接收获取模块,用于在接收到项目版本测试请求时,获取所述项目版本测试请求对应的项目版本,及所述项目版本对应的项目文件;

测试模块,用于在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件;

上线模块,用于在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

此外,为实现上述目的,本发明还提供一种基于git的版本管理设备,所述基于git的版本管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于git的版本管理程序,所述基于git的版本管理程序被所述处理器执行时实现如上述的基于git的版本管理方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于git的版本管理程序,所述基于git的版本管理程序被处理器执行时实现如上述的基于git的版本管理方法的步骤。

本发明实施例提出的一种基于git的版本管理方法、装置、设备及可读存储介质。本发明实施例中在接收到项目版本测试请求时,获取所述项目版本测试请求对应的项目版本,及所述项目版本对应的项目文件;在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件;在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。本发明实施例中通过测试分支测试项目版本对应的项目文件,在项目上线时测试分支将需要上线的项目文件发送至开发分支进行上线,而不是直接在开发分支上进行测试,从而减少了项目版本回退等操作,使得项目版本管理变得简单便捷。

附图说明

图1为本发明实施例提供的基于git的版本管理设备一种实施方式的硬件结构示意图;

图2为本发明基于git的版本管理方法第一实施例的流程示意图;

图3为本发明基于git的版本管理方法第二实施例的流程示意图;

图4为本发明基于git的版本管理方法第三实施例的流程示意图;

图5为本发明基于git的版本管理方法第四实施例的流程示意图;

图6为本发明基于git的版本管理方法第五实施例的流程示意图;

图7为本发明基于git的版本管理方法第六实施例的流程示意图;

图8为本发明基于git的版本管理方法第七实施例的流程示意图;

图9为本发明基于git的版本管理装置一实施例的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。

本发明实施例基于git的版本管理终端可以是台式电脑,也可以是笔记本电脑、平板电脑等具有显示功能的终端设备。

如图1所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于git的版本管理程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的基于git的版本管理程序,所述基于git的版本管理程序被处理器执行时实现下述实施例提供的基于git的版本管理方法中的操作。

基于上述基于git的版本管理设备硬件结构,提出了本发明基于git的版本管理方法的实施例。

参照图2,在本发明基于git的版本管理方法的第一实施例中,所述基于git的版本管理方法包括:

步骤s10,在接收到项目版本测试请求时,获取所述项目版本测试请求对应待测试的项目版本。

本实施例中基于git的版本管理方法应用于基于git的版本管理设备(又叫终端),基于git的版本管理设备包括智能手机、平板电脑和便携式计算机等设备。

项目由各种文件(又叫项目文件)组成,由于各种原因,比如在项目中增加新功能,针对不同系统或者设备对项目所做的兼容性修改等,需要对项目中的各个文件进行编号,以区别不同的文件,项目中文件的每次变更都会产生一个项目版本,对项目版本进行编号。

本实施例中给出一种具体应用场景,例如,项目由代码文件、配置文件和说明文档三种文件组成,如表1,初始项目版本的版本号为x1,当对说明文档进行修改后,便产生了新的版本号x1.2,一个项目可能包含多个项目版本。

表1:项目版本与项目文件

在使用基于git的版本管理方法做项目版本测试时,用户将各个项目版本对应的文件输入基于git的版本管理程序中,当各个项目版本对应的所有项目文件输入基于git的版本管理程序后,触发项目版本测试请求,基于git的版本管理程序在接收到项目版本测试请求时,获取文件对应的项目版本。

步骤s20,在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件。

本实施例中测试分支为基于git的版本管理程序创建的分支之一,可用于测试项目文件,即,测试项目版本。

当各个项目版本对应的所有项目文件输入基于git的版本管理程序后,获取项目文件对应的项目版本,并确定项目版本的数量,若项目版本的数量至少为两个,则基于git的版本管理程序将项目版本对应的项目文件发送到测试分支,并在测试分支上测试各项目文件,项目文件如何在测试分支上进行测试,本实施例不再做具体叙述。

步骤s30,在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

本实施例中目标上线版本是指需要上线的项目版本,开发分支为基于git的版本管理程序创建的一个长期存在的分支,可通过开发分支对目标项目版本进行上线。

项目上线请求的触发可以是手动的,例如,用户选中需要上线的项目版本,并点击“上线”图标,点击操作触发项目上线请求,可知地,项目上线请求的触发还可以是自动的,例如,预设一个筛选条件,基于git的版本管理程序认定符合筛选条件的项目版本为需要上线的项目版本。基于git的版本管理程序将目标项目版本发送到开发分支,以通过开发分支对目标项目版本进行上线。

本实施例中,基于git的版本管理程序接收项目版本测试请求,并获取项目版本,在项目版本至少为两个时,基于git的版本管理程序将项目版本对应的项目文件发送到测试分支进行测试,基于git的版本管理程序还会将需要上线的目标项目版本发送到开发分支,以通过开发分支对目标项目版本进行上线。本实施例通过在测试分支上同时测试多个项目版本,并将多个项目版本中的目标项目版本发送至开发分支,以通过开发分支对目标项目版本进行上线,不需要把其他不上线的项目版本的相关代码回退,使项目版本管理变得简单便捷。

进一步地,参照图3,在本发明上述实施例的基础上,提出了本发明git的版本管理方法的第二实施例。

本实施例是第一实施例中步骤s20细化的步骤,本实施例与本发明上述实施例的区别在于:

步骤s21,在所述项目版本至少为两个时,判断是否存在测试分支。

本实施例中测试分支是基于git的版本管理程序创建的分支之一,当基于git的版本管理程序接收到项目版本测试请求,进而获取项目版本测试请求对应的项目版本,获取到的项目版本至少为两个时,判断基于git的版本管理程序中是否存在测试分支。

测试分支为基于git的版本管理程序创建的分支,当基于git的版本管理程序首次启动时,(基于git的版本管理设备关闭后再开启时,可能会清除基于git的版本管理程序的记忆文件,使基于git的版本管理程序确定为首次开启)基于git的版本管理程序中并没有测试分支,测试分支可以是用户手动创建或者基于git的版本管理程序自动创建,所以,在所述项目版本至少为两个时,需要判断基于git的版本管理程序中是否存在测试分支,这是判断的主要目的。

步骤s22,若不存在测试分支,则调用预设git工具创建测试分支,并执行所述将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件的步骤。

本实施例中预设git工具是基于git的版本管理程序中自带的,用于创建测试分支,在基于git的版本管理程序开启时,预设git工具可以是基于git的版本管理程序中一个可以点击的图标,也可以是输入的一段代码,本实施例中不做限制和具体叙述。

若判断的结果为基于git的版本管理程序中不存在测试分支,基于git的版本管理程序将调用预设git工具创建测试分支,待测试分支创建完成后,执行步骤s20。

本实施例中在项目版本至少为两个时,判断基于git的版本管理程序中是否存在测试分支,若不存在测试分支,则调用预设git工具创建测试分支,通过创建测试分支,使得各项目版本可以在测试分支上进行测试,从而对需要上线的目标项目版本进行上线。

进一步地,参照图4,在本发明上述实施例的基础上,提出了本发明git的版本管理方法的第三实施例。

本实施例是第一实施例中步骤s10之后的步骤,本实施例与本发明上述实施例的区别在于:

步骤s40,在接收到项目需求测试请求时,获取所述项目版本对应的需求文件,通过开发分支创建需求分支,并在所述需求分支上测试所述需求文件。

本实施例中项目需求是指开发人员在项目开发过程中针对不同的项目版本做出的修改,包括每日优化和功能差异等。项目需求与项目版本存在对应关系,一个项目版本可对应一个或多个项目需求,项目需求由需求文件组成。

本实施例中项目需求测试请求的触发可以是自动的,也可以是手动的,本实施例不再做具体叙述。基于git的版本管理程序在接收到项目需求测试请求时,会通过开发分支来创建需求分支,其中,项目需求与需求分支具有一一对应关系。在测试项目需求时,将所有项目需求(即,所有需求文件)输入到基于git的版本管理程序,并在项目需求对应的需求分支上测试需求文件,如表2,项目版本x1对应项目需求1和项目需求2,组成项目需求1的需求文件a1,b1,c1在项目需求1对应的需求分支1上进行测试。

表2:项目版本和项目需求

本实施例中通过开发分支创建需求分支,并将组成项目需求的需求文件在项目需求对应的需求分支上测试,使得项目版本上线的过程更加完善。

进一步地,参照图5,在本发明第三实施例的基础上,提出了本发明git的版本管理方法的第四实施例。

本实施例是第一实施例中步骤s30细化的步骤,本实施例与本发明上述实施例的区别在于:

步骤s31,在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,及所述目标项目版本对应的目标项目文件和目标需求文件。

本实施例中目标需求文件为组成目标需求的文件,目标需求是指需要上线的项目需求,本实施例中目标项目版本对应的项目需求中必定存在目标需求。

由步骤s40可知,项目需求与项目版本存在对应关系,基于git的版本管理程序在接收到项目上线请求后,获取目标项目版本,进而获取目标项目文件和目标需求文件。

步骤s32,将所述目标项目文件和所述目标需求文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

基于git的版本管理程序将获取到目标项目文件和目标需求文件发送到开发分支,以通过开发分支上线目标项目版本。

本实施例中基于git的版本管理程序接收项目上线请求,并获取目标项目版本和目标需求文件,进而将目标项目文件和目标需求文件发送至开发分支,以通过开发分支上线目标项目版本。

进一步地,参照图6,在本发明上述实施例的基础上,提出了本发明git的版本管理方法的第五实施例。

本实施例是第一实施例中步骤s20之后的步骤,本实施例与本发明上述实施例的区别在于:

步骤s50,当接收到所述测试分支输出的异常信息时,当接收到所述测试分支输出的异常信息时,获取所述异常信息对应的项目文件,将所述异常信息对应的项目文件发送至所述需求分支,并在所述需求分支上修复所述异常信息对应的项目文件。

组成各项目版本的项目文件在测试分支进行测试时,若出现因项目文件中的内容异常,而产生的异常信息时,获取产生异常信息的项目文件对应的项目版本,基于git的版本管理程序将产生异常信息的项目文件发送至需求分支,并在需求分支上修复产生异常信息的项目文件。其中,将产生异常的项目文件对应的项目版本作为异常项目版本,异常项目版本对应一个或多个项目需求,每个项目需求又对应一个需求分支,具体地,基于git的版本管理设备将产生异常信息的项目文件随机发送至异常项目版本对应的需求分支上。

步骤s60,在检测到所述异常信息对应的项目文件修复完成时,将修复后的项目文件发送至所述测试分支,并在所述测试分支上进行二次测试。

产生异常信息的项目文件在需求分支上进行修复,基于git的版本管理程序检测到修复完成时,将修复后的项目文件再次发送到测试分支进行二次测试,可知地,若二次测试仍出现异常信息,则再次执行步骤s50,直至不再出现异常信息。基于git的版本管理程序检测修复完成的具体方法可以是,在文件修复完成后,基于git的版本管理程序输出修复完成的提示信息,其中,提示信息中包括确定修复完成的操作方法,用户根据提示信息进行操作后,基于git的版本管理程序便检测到项目文件修复完成。

在本实施例中,组成各项目版本的项目文件在测试分支进行测试,当项目文件出现异常时,基于git的版本管理程序将出现异常的项目文件发送至需求分支进行修复,并将修复后的项目文件发送至测试分支进行二次测试,直至不再出现异常,使得各项目版本的准确性得到了保证。

进一步地,参照图7,在本发明上述实施例的基础上,提出了本发明git的版本管理方法的第六实施例。

本实施例是第一实施例中步骤s30之后的步骤,本实施例与本发明上述实施例的区别在于:

步骤s70,通过所述开发分支创建发布分支,将所述目标项目文件和所述目标需求文件作为上线包发送至所述发布分支。

本实施例中发布分支为开发分支创建的一个短期存在的分支,用于目标项目版本的模拟上线测试,上线包是指目标项目文件和目标需求文件组成的一个整体。

当目标项目文件和目标需求文件发送至开发分支后,基于git的版本管理程序便通过开发分支创建发布分支,具体如何通过开发分支创建发布分支,本实施例不做具体叙述,发布分支创建完成后,基于git的版本管理程序将上线包发送至发布分支。

步骤s80,在所述发布分支上模拟上线环境,并在所述上线环境测试所述上线包。

本实施例中模拟上线环境是指测试人员在发布分支上搭建的一种模拟项目上线的环境,用于测试项目在模拟上线的环境中的运行情况。

基于git的版本管理程序将上线包发送至发布分支,并在发布分支上预先搭建的模拟上线环境中测试上线包,在发布分支上测试上线包的目的是检测目标项目版本和目标项目需求在模拟上线的环境中的运行情况。

步骤s90,若所述上线包在所述上线环境测试通过,则将所述上线包发送至主干分支完成项目上线。

本实施例中主干分支为基于git的版本管理程序创建的一个长期存在的分支,用于目标项目版本和目标项目需求最终的上线,可以理解的是,主干分支是项目上线的最终路径。

基于git的版本管理程序将上线包发送至发布分支,并在发布分支上预先搭建的模拟上线环境中测试上线包,若测试通过,基于git的版本管理程序将上线包发送至主干分支,以通过主干分支完成目标项目版本和目标项目需求的最终上线,可知地,若测试不通过,即,上线包在模拟上线环境中的测试出现错误信息,测试人员可在发布分支上对上线包进行修复,修复完成后,上线包将会在发布分支上进行二次测试,直至测试通过,当上线包最终测试通过后,可删除发布分支。

本实施例中,由目标项目文件和目标需求文件组成的上线包在发布分支上进行模拟上线环境测试,测试不通过时,将上线包在发布分支上修复,修复完成后,上线包将会在发布分支上进行二次测试,直至测试通过。使得项目在上线前的安全性得到了初步保障。

进一步地,参照图8,在本发明上述实施例的基础上,提出了本发明git的版本管理方法的第七实施例。

本实施例是第三实施例中步骤s90之后的步骤,本实施例与本发明上述实施例的区别在于:

步骤s100,当接收到基于上线后的上线包输出的报警信息时,通过所述主干分支创建修复分支,并将所述上线包发送至所述修复分支,以在所述修复分支上修复所述上线包。

本实施例中修复分支为主干分支创建的一个短期存在的分支,用于当上线包在线上运行出现错误时,将上线包发送至修复分支进行修复。

上线包在主干分支进行上线,即完成了项目的上线工作,当上线包在线上运行出现错误时,基于git的版本管理设备会输出包含错误内容的报警信息,基于git的版本管理程序在接收到报警信息后,便会通过主干分支创建一个修复分支,对出现错误的上线包做下线处理,并将出现错误的上线包发送至修复分支进行修复。

步骤s110,当接收到修复完成提示信息时,将修复后的上线包发送到所述主干分支,并通过所述主干分支重新上线修复后的上线包。

当出现错误的上线包在修复分支修复完成后,会再次被发送到主干分支进行二次上线,二次上线成功后,修复分支将被删除。

具体地,步骤s110包括:

步骤a1,当接收到上线完成提示信息时,判断当前是否存在发布分支。

由步骤s90可知,当上线包最终测试通过后,发布分支可能会被删除,判断是否存在发布分支的目的是,基于git的版本管理程序会根据不同的判断结果执行不同的操作。

步骤a2,若当前存在所述发布分支,则将修复后的上线包发送到所述发布分支,在所述发布分支上模拟上线环境,并在所述上线环境中测试修复后的上线包。

若判断的结果为当前存在发布分支,基于git的版本管理程序将修复后的上线包发送到发布分支,可知地,发布分支上搭建有模拟上线环境,将修复后的上线包发送到发布分支的目的是,在不确定修复后的上线包是否会再次出现错误的情况下,将修复后的上线包发送到发布分支进行模拟上线环境测试是有必要的。

步骤a3,若当前不存在所述发布分支,则通过所述开发分支创建发布分支,将修复后的上线包发送到所述发布分支,在所述发布分支上模拟上线环境,并在所述上线环境中测试修复后的上线包。

若判断的结果为当前不存在发布分支,基于git的版本管理程序将修复后的上线包发送到开发分支,由步骤s70可知,当目标项目文件和目标需求文件(修复后的上线包是由目标项目文件和目标需求文件组成的一个整体)发送至开发分支后,基于git的版本管理程序便通过开发分支创建发布分支,发布分支创建完成后,基于git的版本管理程序将修复后的上线包发送至发布分支,并执行步骤a2。

本实施例中当上线包在线上运行出现错误时,基于git的版本管理程序便会通过主干分支创建一个修复分支,并将出现错误的上线包发送至修复分支进行修复,修复完成后,基于git的版本管理程序将修复后的上线包发送至发布分支进行模拟上线环境测试,测试通过后,再将修复后的上线包发送至主干分支进行二次上线。使得目标项目(包括目标项目版本和目标项目需求)的正常上线得到了保证。

此外,参照图9,本发明实施例还提出一种基于git的版本管理装置,所述基于git的版本管理装置包括:

接收获取模块10,用于在接收到项目版本测试请求时,获取所述项目版本测试请求对应的项目版本,及所述项目版本对应的项目文件;

测试模块20,用于在所述项目版本至少为两个时,将各所述项目版本对应的项目文件发送至测试分支,并在所述测试分支上测试各所述项目版本对应的项目文件;

测试模块30,用于在接收到项目上线请求时,获取所述项目上线请求对应的目标项目版本,将所述目标项目版本对应的目标项目文件发送至开发分支,以通过所述开发分支上线所述目标项目版本。

上述各程序模块所执行的方法可参照本发明基于git的版本管理方法各个实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件商品的形式体现出来,该计算机软件商品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机和平板电脑等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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