一种代码管理方法及平台与流程

摘要: 本申请涉及计算机,尤其涉及一种代码管理方法及平台。背景技术:1、代码开源不仅可以实现代码复用,降低开发成本,还可以使得全球开发者共同维护代码,例如解决代码问题、...
一种代码管理方法及平台与流程

本申请涉及计算机,尤其涉及一种代码管理方法及平台。

背景技术:

1、代码开源不仅可以实现代码复用,降低开发成本,还可以使得全球开发者共同维护代码,例如解决代码问题、提供代码优化方案等,从而实现相关功能的快速完善。因此,代码开源生态发展迅猛,有众多的项目进行开源生态拓展。

2、目前,开源代码的开发者使用问题单进行代码的问题管理,以及使用合并请求对问题代码进行修复。问题单、合并请求等均记录了代码问题的详细情况。有的代码问题可能涉及到代码的安全,例如代码的安全漏洞等。在代码的安全问题得以修复之前,代码分支、问题单、合并请求、代码提交任务等需要保密,以防止恶意分子通过问题单、合并请求了解代码的安全问题,进而攻击代码。

3、目前的代码分支、问题单、合并请求、代码提交任务的保密方案依赖仓库级的权限控制。仓库级的权限控制导致诸多不便,例如给代码分支的检查造成不便、难以统计开发者对代码问题修复的贡献等。

技术实现思路

1、本申请提供了一种代码管理方法及平台,可以在实现问题级的权限控制,从而避免仓库级的权限控制所导致的不便。

2、第一方面,提供了一种代码管理方法,该方法应用于与基础设施连接或部署在基础设施中的管理平台,管理平台管理基础设施中部署的代码仓库,其中,基础设施包括至少一个数据中心,至少一个数据中心中设置有多个服务器,代码仓库部署在基础设施中的至少一个服务器中;该方法包括:接收代码仓库的管理员针对至少一个问题中的目标问题配置的用户清单,至少一个问题是代码仓库中的代码的问题,其中,至少一个问题中的每个问题对应至少一个修复数据,用户清单记录有至少一个用户;接收第一用户发出的针对代码仓库的第一修复数据查看请求;确定第一用户是用户清单记录的用户之外的用户;在目标问题的修复未完成的情况下,响应第一修复数据查看请求,向第一用户提供至少一个问题中除目标问题之外的问题对应的修复数据。示例性的,目标问题的修复数据包括:具有目标问题的代码分支、目标问题对应的问题单、修复了目标问题的代码分支的代码提交、修复了目标问题的代码分支和主干分支的合并请求中的至少一种。

3、通过该方法,可以确保在代码的目标问题修复完成之前,保障代码的目标问题的修复数据仅能被特定用户查看,保障了修复数据的安全性。

4、在一种可能的实现方式中,该方法还包括:接收第二用户发出的针对代码仓库的第二修复数据查看请求;确定第二用户是用户清单记录的用户;在目标问题的修复未完成的情况下,响应第二修复数据查看请求,向第二用户提供目标问题对应的修复数据。

5、可以在目标问题的修复未完成的情况下,响应第二用户发出的修复数据查看请求,向第二用户提供目标问题对应的修复数据,使得第二用户可以查看目标问题对应的修复数据,以便第二用户利用该修复数据修复目标问题。

6、在一种可能的实现方式中,响应第二修复数据查看请求,向第二用户提供目标问题对应的修复数据,包括:响应第二修复数据查看请求,向第二用户提供至少一个问题中每个问题对应的修复数据。

7、在一种可能的实现方式中,该方法还包括:在目标问题的修复完成的情况下,响应第一修复数据查看请求,向第一用户提供至少一个问题中每个问题对应的修复数据。

8、目标问题的修复已完成,已无需担心恶意分子利用目标问题实施代码攻击,因此,目标问题对应的修复数据无需保密。这种情况下,可以向第一用户提供目标问题对应的修复数据。向第一用户提供上述至少一个问题中的每个问题对应的修复数据,其中包括目标问题对应的修复数据。目标问题的修复数据可以反映参与修复目标问题的用户对目标问题的修复所作出的贡献,向第一用户等公共用户提供目标问题对应的修复数据,可以方便公共用户了解参与修复目标问题的用户对目标问题的修复所作出的贡献。

9、在一种可能的实现方式中,目标问题对应的修复数据记录在代码仓库中,或者,目标问题对应的修复数据记录在代码仓库的派生代码仓库中。

10、该方法可应用于在代码仓库中进行问题修复的场景,也可以应用于利用派生代码仓库进行问题修复的场景。

11、第二方面,提供了一种管理平台,管理平台与基础设施连接或部署在基础设施中,管理平台管理基础设施中部署的代码仓库,其中,基础设施包括至少一个数据中心,至少一个数据中心中设置有多个服务器,代码仓库部署在基础设施中的至少一个服务器中;该方法包括:第一接收模块,用于接收代码仓库的管理员针对至少一个问题中的目标问题配置的用户清单,至少一个问题是代码仓库中的代码的问题,其中,至少一个问题中的每个问题对应至少一个修复数据,用户清单记录有至少一个用户;第二接收模块,用于接收第一用户发出的针对代码仓库的第一修复数据查看请求;确定模块,用于确定第一用户是用户清单记录的用户之外的用户;提供模块,用于在目标问题的修复未完成的情况下,响应第一修复数据查看请求,向第一用户提供至少一个问题中除目标问题之外的问题对应的修复数据。

12、第三方面,提供了一种计算设备集群,包括至少一个计算设备,每个计算设备包括处理器和存储器;至少一个计算设备的处理器用于执行至少一个计算设备的存储器中存储的指令,以使得计算设备集群执行第一方面提供的方法。

13、第四方面,提供了一种计算机可读存储介质,包括计算机程序指令,当计算机程序指令由计算设备集群执行时,计算设备集群执行第一方面提供的方法。

14、第五方面,提供了一种包含指令的计算机程序产品,当指令被计算机设备集群运行时,使得计算机设备集群执行第一方面提供的方法。

15、第二方面至第五方面的有益效果可参考上文对第一方面的有益效果的介绍,在此不再赘述。

1.一种代码管理方法,其特征在于,所述方法应用于与基础设施连接或部署在基础设施中的管理平台,所述管理平台管理所述基础设施中部署的代码仓库,其中,所述基础设施包括至少一个数据中心,所述至少一个数据中心中设置有多个服务器,所述代码仓库部署在所述基础设施中的至少一个服务器中;所述方法包括:

2.根据权利要求1所述方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的方法,其特征在于,所述响应所述第二修复数据查看请求,向所述第二用户提供所述目标问题对应的修复数据,包括:

4.根据权利要求1-3中任一项所述方法,其特征在于,所述方法还包括:

5.根据权利要求1-4中任一项所述的方法,其特征在于,所述目标问题的修复数据包括:具有所述目标问题的代码分支、所述目标问题对应的问题单、修复了所述目标问题的代码分支的代码提交、修复了所述目标问题的代码分支和主干分支的合并请求中的至少一种。

6.根据权利要求1-5中任一项所述的方法,其特征在于,所述目标问题对应的修复数据记录在所述代码仓库中,或者,所述目标问题对应的修复数据记录在所述代码仓库的派生代码仓库中。

7.一种管理平台,其特征在于,所述管理平台与基础设施连接或部署在基础设施中,所述管理平台管理所述基础设施中部署的代码仓库,其中,所述基础设施包括至少一个数据中心,所述至少一个数据中心中设置有多个服务器,所述代码仓库部署在所述基础设施中的至少一个服务器中;所述管理平台包括:

8.一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;

9.一种计算机可读存储介质,其特征在于,包括计算机程序指令,当所述计算机程序指令由计算设备集群执行时,所述计算设备集群执行如权利要求1至6中任一项所述的方法。

10.一种包含指令的计算机程序产品,其特征在于,当所述指令被计算机设备集群运行时,使得所述计算机设备集群执行如权利要求1至6中任一项所述的方法。