一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于一站式开发构建平台的多人协同开发方法及相关设备与流程

2022-08-27 00:44:35 来源:中国专利 TAG:


1.本技术涉及项目协同开发技术领域,尤其涉及一种基于一站式开发构建平台的多人协同开发方法及相关设备。


背景技术:

2.集成开发环境(ide,integrated development environment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套(组)。所有具备这一特性的软件或者软件套(组)都可以叫集成开发环境。在线ide:用户无需安装桌面版本的ide、进行代码编译、运行环境的安装,提供用户在浏览器进行代码编写、提交到远端代码仓库、调试、运行的集成开发环境。jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。但是,现有在线ide开发工具无法对同一项目进行多人协同开发管理,jenkins构建数据无法实现共享。


技术实现要素:

3.有鉴于此,本技术的目的在于提出一种基于一站式开发构建平台的多人协同开发方法及相关设备,用于解决上述问题。
4.基于上述目的,本技术的第一方面提供了一种基于一站式开发构建平台的多人协同开发方法,包括:
5.响应于确定接收到添加命令,确定在线集成开发环境ide开发项目的所有者;
6.对所述所有者进行gitlab权限开通;
7.基于所述gitlab权限,执行所述添加命令,添加协同开发人员;
8.响应于确定所述协同开发人员在预设的项目协同人员中,开通所述协同开发人员的开发权限。
9.本技术的第二方面提供了一种基于一站式开发构建平台的多人协同开发装置,包括:
10.确认模块,被配置为:确定在线集成开发环境ide开发项目的所有者;
11.所有者权限开通模块,被配置为:对所述所有者进行gitlab权限开通;
12.成员添加模块,被配置为:基于所述gitlab权限,执行添加命令,添加协同开发人员;
13.开发权限开通模块,被配置为:响应于确定所述协同开发人员在预设的项目协同人员中,开通所述协同开发人员的开发权限。
14.本技术的第三方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本技术的第一方面提供的所述的方法。
15.本技术的第四方面提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如本技术的第一方面提供的所述方法。
16.从上面可以看出,本技术提供的基于一站式开发构建平台的多人协同开发方法及相关设备,在接收到添加命令后,首先需要确定在线集成开发环境ide开发项目的所有者,只有该项目的所有者才可以开通相应的gitlab权限,在确定所有者的身份后,若该所有者没有开通开发项目的gitlab权限,则需要录入giblab账号密码进行托管,实现该所有者gitlab权限的开通。然后,拥有gitlab权限的所有者执行可以执行接收到的添加命令,添加开发项目中不在的协同开发人员。最后,若确定添加的该协同开发人员在预设的项目协同人员中,开通该协同开发人员的开发权限。被加入的协同开发人员可在自己项目列表中查询到此开发项目,可通过在线ide对此开发项目进行协同开发,同时在jenkins构建部署环境中可以查到此开发项目的历史构建记录情况,同时可对此开发项目进行构建和部署,便于开发项目的管理和数据的共享,提升开发项目的互操作性。如后续项目与该协同开发人员无关,可将该协同开发人员从开发项目中移除,移除后此开发项目对该协同开发人员不可见,该协同开发人员无法对此开发项目执行开发和构建部署操作。
附图说明
17.为了更清楚地说明本技术或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1为本技术实施例的基于一站式开发构建平台的多人协同开发方法的流程图;
19.图2为本技术实施例的确定所有者的流程图;
20.图3为本技术实施例的开通gitlab权限的流程图;
21.图4为本技术实施例的基于一站式开发构建平台的多人协同开发装置的结构图;
22.图5为本技术实施例的电子设备的结构图。
具体实施方式
23.为使本技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本技术进一步详细说明。
24.需要说明的是,除非另外定义,本技术实施例使用的技术术语或者科学术语应当为本技术所属领域内具有一般技能的人士所理解的通常意义。本技术实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
25.相关技术中的在线ide具有以下优点:
26.(1)节省时间和精力,在线ide的目的就是要让开发者更加快捷方便,通过提供工
具和各种性能来帮助开发者组织资源,减少失误,提供捷径。
27.(2)建立统一标准,当一组开发人员使用同一个开发环境时,就建立了统一的工作标准,当在线ide提供预设的模板,或者不同团队分享代码库时,建立统一标准可以使不同的开发人员甚至不同的开发团队迅速熟练在线ide开发过程。
28.(3)便于进行管理开发工作,首先,在线ide提供文档工具,可以自动输入开发者评论,或者迫使开发者在不同区域编写评论。其次,在线ide可以展示资源,更便于发现应用所处位置,无需在文件系统里面艰难的搜索。
29.但是,在线ide还存在以下缺点:
30.(1)存在学习曲线问题,在线ide基本上是比较复杂的工具,为了更好的熟练使用,需要一定的时间和耐心进行学习。
31.(2)初学者使用困难,对初学者来说,使用在线ide来学习开发有相当的难度,不适合学习一种新语言时使用。
32.(3)无法修复坏代码或设计,开发者不能完全依赖工具的便捷,还是必须保持专业水准和熟练度,开发的成果好坏主要还是看开发员的技术。
33.针对在线ide存在上述的缺点,如果利用新人或者其他与此开发项目不相关的开发人员对在线ide开发项目进行开发编辑,由于在线ide在开发过程中无法修复坏代码或设计,则无法保证开发成果的质量,所以需要添加项目本身的协同开发人员进行在线ide开发项目的开发。
34.本技术提供的基于一站式开发构建平台的多人协同开发方法,在收到添加命令后,首先确认在线ide开发项目的所有者,并给该所有者开通gitlab权限,基于该gitlab权限,添加先关的协同开发人员,实现对开发项目的相关协同开发和构建人员管理,实现多人对同一开发项目使用在线ide进行协同开发,同时对开发项目构建数据进行共享,新添加的协同开发人员可以查看同一开发项目的构建历史数据,以便于新添加的协同开发人员快速熟练开发环境。
35.在一些实施例中,如图1所示,基于一站式开发构建平台的多人协同开发方法,包括:
36.步骤100:响应于确定接收到添加命令,确定在线集成开发环境ide开发项目的所有者。
37.在该步骤中,由于在线ide存在无法修复坏代码或设计的缺点,需要保证添加动作的执行者为该开发项目的所有者,避免因为其他相关人员添加的新的协同开发人员导致开发项目失败或质量下降,只有该开发项目的所有者才可以承担开发项目失败或质量下降所带来的风险,所以首先要确定添加命令的执行者是否为该在线ide开发项目的所有者。
38.步骤200;对所有者进行gitlab权限开通。
39.在该步骤中,在确定添加命令的执行者为该开发项目的所有者后,执行添加命令需要该所有者具备gitlab权限,如果该所有者已经具备gitlab权限,重复开通不会赋予该所有者新的权限;如果该所有者不具备gitlab权限,则需要等待该所有者人工输入gitlab账号和密码进行权限开通。
40.步骤300:基于gitlab权限,执行添加命令,添加协同开发人员。
41.在该步骤中,当该所有者具备gitlab权限后,添加命令的执行条件全部满足,执行
该添加命令,添加该添加命令对应的协同开发人员。
42.步骤400:响应于确定协同开发人员在预设的项目协同人员中,开通协同开发人员的开发权限。
43.在该步骤中,需要对添加的协同开发人员进行进一步地验证,确定该协同开发人员是否在该开发项目的预设的项目协同人员中,如果不是,则需要等待该项目的所有者确认是否添加该协同开发人员。如果是,则开通相应的开发权限。
44.在一些实施例中,如图1所示,基于一站式开发构建平台的多人协同开发方法,还包括:
45.步骤500:响应于确定开发权限开通成功,协同开发人员根据在线ide对开发项目进行查看。
46.步骤600:响应于确定开发权限开通成功,协同开发人员在预设的jenkins构建部署环境中可以查到开发项目的历史构建记录;
47.步骤700:基于历史构建记录,对开发项目进行构建和部署。
48.步骤800:响应于确定协同开发人员与后续的开发项目无关,移除协同开发人员。
49.其中,在确定该协同开发人员的开发权限已经被开通的情况下,被加入的协同开发人员可在自己项目列表中查询到此开发项目,可通过在线ide对此开发项目进行协同开发,同时在jenkins构建部署环境中可以查到此开发项目的历史构建记录情况,同时可对此开发项目进行构建和部署,便于开发项目的管理和数据的共享,提升开发项目的互操作性。如后续项目与该协同开发人员无关,可将该协同开发人员从开发项目中移除,移除后此开发项目对该协同开发人员不可见,该协同开发人员无法对此开发项目执行开发和构建部署操作。
50.在一些实施例中,如图2所示,步骤100:确定在线集成开发环境ide开发项目的所有者,具体包括:
51.步骤110:获取开发项目的开发信息。
52.在该步骤中,开发项目的相关信息一般存储在开放项目对应的开发信息中,在开发信息中可以得到开发项目中公开的信息。
53.步骤120:提取开发信息中的项目创建者名单。
54.在该步骤中,提取步骤110中得到的公开信息中的创建者名单,创建者名单中的人员均为该开发项目的创建者,均为该开发项目的共同所有者,提取该创建者名单可以用来判断添加命令的执行者是否为该开发项目的所有者。
55.步骤130:响应于确定添加动作的执行者位于项目创建者名单中,判定执行者为所有者。
56.在该步骤中,将添加命令的执行者与创建者名单进行比对,如果该执行者位于该创建者名单中,说明该执行者是该开发项目的所有者,有权利执行其权限内的操作。
57.在一些实施例中,如图3所示,步骤200:对所有者进行gitlab权限开通,具体包括:
58.步骤210:获取所有者的全部权限。
59.在该步骤中,如果需要开通该所有者的gitlab权限,就需要先知道该所有者具备哪些权限,所以首先获取该所有者的全部权限,用以查看其中是否有gitlab权限。
60.步骤220:响应于确定全部权限中不存在gitlab权限,获取所有者的giblab账号和
giblab密码。
61.在该步骤中,如果该所有者的全部权限中不存在gitlab权限,则获取该所有者的giblab账号和giblab密码,对在线ide开发项目进行登录和托管,进而开通该gitlab权限。
62.步骤230:基于giblab账号和giblab密码开通gitlab权限。
63.在该步骤中,对于拥有giblab账号和giblab密码的所有者,可以确定其是该开发项目的所有者之一,开通该所有者的gitlab权限。
64.需要说明的是,本技术实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本技术实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
65.需要说明的是,上述对本技术的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
66.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种基于一站式开发构建平台的多人协同开发装置。
67.参考图4,所述基于一站式开发构建平台的多人协同开发装置,包括:
68.确认模块10,被配置为:确定在线集成开发环境ide开发项目的所有者;
69.所有者权限开通模块20,被配置为:对所有者进行gitlab权限开通;
70.成员添加模块30,被配置为:基于gitlab权限,执行添加命令,添加协同开发人员;
71.开发权限开通模块40,被配置为:响应于确定协同开发人员在预设的项目协同人员中,开通协同开发人员的开发权限。
72.为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本技术时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
73.上述实施例的装置用于实现前述任一实施例中相应的基于一站式开发构建平台的多人协同开发方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
74.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的基于一站式开发构建平台的多人协同开发方法。
75.图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
76.处理器1010可以采用通用的cpu(central processing unit,中央处理器)、微处理器、应用专用集成电路(application specific integrated circuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
77.存储器1020可以采用rom(read only memory,只读存储器)、ram(random access memory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
78.输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
79.通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
80.总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
81.需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
82.上述实施例的电子设备用于实现前述任一实施例中相应的基于一站式开发构建平台的多人协同开发方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
83.基于同一发明构思,与上述任意实施例方法相对应的,本技术还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的基于一站式开发构建平台的多人协同开发方法。
84.本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
85.上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的基于一站式开发构建平台的多人协同开发方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
86.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本技术的范围(包括权利要求)被限于这些例子;在本技术的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本技术实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
87.另外,为简化说明和讨论,并且为了不会使本技术实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此
外,可以以框图的形式示出装置,以便避免使本技术实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本技术实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本技术的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本技术实施例。因此,这些描述应被认为是说明性的而不是限制性的。
88.尽管已经结合了本技术的具体实施例对本技术进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
89.本技术实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本技术实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献