一种版本控制的自动变基方法、装置、设备及介质制造方法及图纸

技术编号:38016711 阅读:6 留言:0更新日期:2023-06-30 10:42
本发明专利技术公开了一种版本控制的自动变基方法、装置、设备及介质。该方法包括:将用户所输入的合并请求中的分支代码段发送给客户端;接收客户端基于分支代码段所发送的变基请求,其中,变基请求为客户端确定分支代码段中的合并请求状态字段为开启,且测试流程状态字段为初始默认状态时所生成的;根据变基请求对分支代码段进行自动变基操作以获取定位变基点。通过将分支代码段发送给客户端,并根据客户端对分支代码段验证所生成的变基请求,触发自动对分支代码段进行变基,从而能够及时的对提交的分支代码段进行rebase处理,无需用户手动进行rebase按钮操作,从而提高了rebase操作的效率和便捷性。和便捷性。和便捷性。

【技术实现步骤摘要】
一种版本控制的自动变基方法、装置、设备及介质


[0001]本专利技术实施例涉及通信
,尤其涉及一种版本控制的自动变基方法、装置、设备及介质。

技术介绍

[0002]Gitlab是一个以git作为代码管理为基础而部署的web服务平台,可以有效,快速的处理项目版本管理。当前大部分公司在研发时都会使用git作为源码管理工具,以web服务平台的gitlab作为源码仓库进行管理,利用各个项目和分支之间相互独立的特性,直观有效的对每个项目进行操作,并将项目上分支所修改的内容合并到主干。
[0003]在相同项目下,当同多个合并请求的提交需要进入仓库或者并非在与主干master一致所作的合并请求的提交,没有一个合并请求提交被merge,此期间的所有合并请求均需要管理人员频繁且及时的对不同合并请求进行rebase按钮点击操作,这种情况给管理人员带来了极大的不便。

技术实现思路

[0004]本专利技术实施例提供一种版本控制的自动变基方法、装置、设备及介质,以实现版本控制下的自动变基。
[0005]第一方面,本专利技术实施例提供了一种版本控制的自动变基方法,应用于仓库服务器,包括:
[0006]将用户所输入的合并请求中的分支代码段发送给客户端;
[0007]接收所述客户端基于所述分支代码段所发送的变基请求,其中,所述变基请求为所述客户端确定所述分支代码段中的合并请求状态字段为开启,且测试流程状态字段为初始默认状态时所生成的;
[0008]根据所述变基请求对所述分支代码段进行自动变基操作以获取定位变基点。
[0009]第二方面,本专利技术实施例提供了一种版本控制的自动变基装置,包括:分支代码段发送模块,用于将用户所输入的合并请求中的分支代码段发送给客户端;
[0010]变基请求接收模块,用于接收所述客户端基于所述分支代码段所发送的变基请求,其中,所述变基请求为所述客户端确定所述分支代码段中的合并请求状态字段为开启,且测试流程状态字段为初始默认状态时所生成的;
[0011]自动变基模块,用于根据所述变基请求对所述分支代码段进行自动变基操作以获取定位变基点。
[0012]第三方面,本专利技术实施例提供了计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法。
[0013]第四方面,本专利技术实施例提供了一种计算机可执行指令的存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述方法。
[0014]本申请通过将分支代码段发送给客户端,并根据客户端对分支代码段验证所生成
的变基请求,触发自动对分支代码段进行变基,从而能够及时的对提交的分支代码段进行rebase处理,无需用户手动进行rebase按钮操作,从而提高了rebase操作的效率和便捷性。
附图说明
[0015]图1是本专利技术实施例一提供的一种版本控制的自动变基方法的流程图;
[0016]图2是本专利技术实施例一提供的版本控制的自动变基的应用场景示意图;
[0017]图3是本专利技术实施例二提供的一种版本控制的自动变基方法的流程图;
[0018]图4是本专利技术实施例三提供的一种版本控制的自动变基装置的结构示意图;
[0019]图5是本专利技术实施例四提供的一种计算机设备的结构示意图。
具体实施方式
[0020]下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。
[0021]实施例一
[0022]图1为本专利技术实施例一提供的一种版本控制的自动变基方法的流程图,本实施例可适用于版本控制情况下进行自动变基的情况,该方法可以由版本控制的自动变基装置来执行,该装置可以由软件和/或硬件的方式实现,方法包括:
[0023]步骤S101,将用户所输入的合并请求中的分支代码段发送给客户端。
[0024]其中,如图2所示为版本控制的自动变基的应用场景示意图,如图2所示当有多个合并请求在项目中同时提交,有一个被合并merge进仓库,其它的合并请求均需要变基rebase的情况下,在未rebase时,A0、A1和A2三处的分支提交最终都会在B出合并到主干,由此代码结构将变得十分混乱,不利于用户对于历史记录的查询。而如图2所示在进行变基rebase之后,代码结构将变得清晰,从而便于用户对历史记录的查询,而本申请中则主要对分支代码段在无需用户点击rebase按键操作的情况下,自动执行rebase操作。并且本实施方式中的仓库服务器为Gitlab web,客户端为Jenkins job,本实施方式中的仓库服务器在接收到用户所发送的合并请求之后,通过与客户端的交互确定在合并过程中需要进行变基时会自动进行rebase。并且本实施方式中主要是在软件进行版本控制时需要涉及到rebase,因此本实施方式中的合并请求主要应用于版本控制。
[0025]可选的,将用户所输入的合并请求中的分支代码段发送给客户端之前,还包括:与客户端建立通信连接,对客户端生成变基请求的条件进行设置;对客户端生成分支代码段获取请求的触发方式进行设置。
[0026]可选的,与客户端建立通信连接,包括:获取客户端的指定地址;通过访问指定地址与客户端建立通信连接。
[0027]其中,本实施方式中可以预先设置客户端的url,在与客户端建立通信连接时具体是通过访问url与客户端建立通信连接。例如,确定客户端的url为https://www.sdgt.com,则仓库服务器则可以通过访问https://www.sdgt.com,以建立与客户端的通信连接。当然,本实施方式中仅是举例说明,在实际应用中还可以通过预先设置客户端的IP地址,通过访问预先设置的IP地址来访问客户端,以建立与客户端的通信连接,因此本实施方式中并不
对连接客户端的具体方式进行限定,只要能够实现仓库服务器与客户端的通信连接,则都是在本申请的保护范围内。
[0028]可选的,将用户所输入的合并请求中的分支代码段发送给客户端,包括:通过流水线对合并请求中的分支代码段进行测试,并在测试通过后将分支代码段进行保存;通过监听模块向客户端发送监控信息,并接收客户端基于监控信息所反馈的分支代码段获取请求,其中,监控信息和分支代码段获取请求中包含新保存的分支代码段标识;基于分支代码段获取请求,将与分支代码段标识所对应的分支代码段全部发送给客户端。
[0029]具体的说,本实施方式中会运行流水线pipeline对分支代码段进行测试,在进行测试时具体是检测分支代码的格式是否符合仓库服务器预先设置的标准格式,在确定不符号的情况下则无法将分支代码段保存到仓库服务器中只有在确定测试通过的情况下则会将分支代码段进行保存。由于在仓库服务器中包含监听模块,当确定有新的分支代码段存入时,则会通过监听模块基于预先设置的url向客户端发送本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种版本控制的自动变基方法,其特征在于,应用于仓库服务器,包括:将用户所输入的合并请求中的分支代码段发送给客户端,其中,所述合并请求应用于版本控制;接收所述客户端基于所述分支代码段所发送的变基请求,其中,所述变基请求为所述客户端确定所述分支代码段中的合并请求状态字段为开启,且测试流程状态字段为初始默认状态时所生成的;根据所述变基请求对所述分支代码段进行自动变基操作以获取定位变基点。2.根据权利要求1所述的方法,其特征在于,所述将用户所输入的合并请求中的分支代码段发送给客户端,包括:通过流水线对合并请求中的分支代码段进行测试,并在测试通过后将所述分支代码段进行保存;通过监听模块向客户端发送监控信息,并接收客户端基于所述监控信息所反馈的分支代码段获取请求,其中,所述监控信息和所述分支代码段获取请求中包含新保存的分支代码段标识;基于所述分支代码段获取请求,将与分支代码段标识所对应的分支代码段全部发送给客户端。3.根据权利要求2所述的方法,其特征在于,所述根据所述变基请求对所述分支代码段进行变基操作以获取定位变基点之后,还包括:根据所述定位变基点生成变基操作完成消息,并将所述变基操作完成消息发送给所述客户端;接收所述客户端基于所述变基操作完成消息所反馈的流水线取消指令。4.根据权利要求3所述的方法,其特征在于,所述接收所述客户端所反馈的流水线取消指令之后,还包括:获取所述流水线的当前状态,其中,所述当前状态包括运行状态或中止状态;当确定所述流水线的当前状态为运行状态时,则将所述流水线进行取消。5.根据权利要求2所述的方法,其特征在于,所述将用户所输入的合...

【专利技术属性】
技术研发人员:张震王彦杰
申请(专利权)人:砺算科技上海有限公司
类型:发明
国别省市:

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

1