一种基于Gerrit的代码管理方法及系统与流程

文档序号:17761571发布日期:2019-05-24 21:44阅读:356来源:国知局
一种基于Gerrit的代码管理方法及系统与流程

本发明涉及代码管理领域,具体是一种基于gerrit的代码管理方法及系统,用于增加研发人员使用体验、减少代码提交的出错率、以及提高研发人员工作效率。



背景技术:

软件版本管理是软件过程的关键要素,它控制软件产品的演进保证其配置的完整性和可跟踪性。自动化测试代码也要通过版本管理来管控自动化代码,方便维护和管理。

目前,git是世界上最先进的分布式版本管理系统之一,gerrit是一个建立在git版本控制系统之上、基于web的代码审查工具。

通常,在编译调试自动化代码通过后,大多数研发人员会手动打开windows的命令提示符窗口(cmd.exe),然后输入相应的git命令,在提交代码至远程代码库之前,对其所要提交的代码进行检查,以减少代码提交的出错率。然而,手动打开windows的命令提示符窗口、之后再在打开的命令提示符窗口输入相应的git命令,这一系列的操作过程相对繁琐,致使研发人员的使用体验(即用户体验)相对较差,并在一定程度上制约研发人员的工作效率,甚至致使有些研发人员省略代码检查直接提交,继而致使代码提交的出错率相对较高。

为此,本发明提供了一种基于gerrit的代码管理方法及系统,用于解决上述技术问题。



技术实现要素:

本发明所要解决的技术问题是,提供一种基于gerrit的代码管理方法及系统,用于增加用户体验、减少代码提交的出错率、以及提高用户工作效率。

为解决上述技术问题,本发明提供了一种基于gerrit的代码管理方法,该基于gerrit的代码管理方法包括,

工作区状态查看方法:通过预先创建的库对比命令按钮,查看本地代码仓库与远程代码仓库的文件改变记录;

代码改变查看方法:通过预先创建的代码比较命令按钮,查看上述文件改变记录中相应代码文件的代码改变;

代码提交方法:通过预先创建的一键提交命令按钮,提交本地代码文件至远程代码仓库。

其中,所述的库对比命令按钮,封装有gitstatus命令;

所述的代码比较命令按钮,封装有gitdiff命令;

所述的一键提交命令按钮,封装有gitadd命令、gitcommit命令、gitfetchorigin命令、gitrebaseorigin/master命令和gitreveiw命令。

其中,该基于gerrit的代码管理方法还包括:

撤销与版本回滚方法:通过预先创建的放弃操作命令按钮,触发本地代码文件的修改操作被撤销、并使自动回滚到修改前版本;

和/或

撤销与拉取代码方法:通过预先创建的强制更新命令按钮,撤销本地代码文件的修改、并拉取远程代码仓库最新代码文件替换本地相应代码文件。

其中,在所述的基于gerrit的代码管理方法包括撤销与版本回滚方法时:所述的放弃操作命令按钮,封装有gitfetch命令和gitreset命令。

其中,在所述的基于gerrit的代码管理方法包括撤销与拉取代码方法时:所述的强制更新命令按钮,封装有gitfetch命令、gitreset命令和gitpull命令。

另外,本发明还提供了一种基于gerrit的代码管理系统,该基于gerrit的代码管理系统包括:

工作区状态查看单元,采用库对比命令按钮,用于查看本地代码仓库与远程代码仓库的文件改变记录;

代码改变查看单元,采用代码比较命令按钮,用于查看上述文件改变记录中相应代码文件的代码改变;

代码提交单元,采用一键提交命令按钮,用于提交本地代码文件至远程代码仓库。

其中,所述的库对比命令按钮,封装有gitstatus命令;

所述的代码比较命令按钮,封装有gitdiff命令;

所述的一键提交命令按钮,封装有gitadd命令、gitcommit命令、gitfetchorigin命令、gitrebaseorigin/master命令和gitreveiw命令。

其中,该基于gerrit的代码管理系统还包括:

撤销与版本回滚单元,采用放弃操作命令按钮,用于触发本地代码文件的修改操作被撤销、并使自动回滚到修改前版本;

和/或:

撤销与拉取代码单元,采用强制更新命令按钮,用于撤销本地代码文件的修改、并拉取远程代码仓库最新代码文件替换本地代码文件。

其中,在所述的基于gerrit的代码管理系统包括撤销与版本回滚单元时,所述的放弃操作命令按钮内封装有gitfetch命令和gitreset命令。

其中,在所述的基于gerrit的代码管理系统包括撤销与拉取代码单元时,所述强制更新命令按钮内封装有gitfetch命令、gitreset命令和gitpull命令。

与现有技术相比,本发明的优点在于:

本发明所述的基于gerrit的代码管理方法及系统,二者均通过用按钮代替命令的输入,可在一定程度上增加研发人员的使用体验、减少代码提交的出错率、提高研发人员的工作效率。

由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。

附图说明

图1为本发明所述基于gerrit的代码管理方法的一种具体实施方式的方法流程示意图。

图2为本发明所述基于gerrit的代码管理系统的一种具体实施方式的结构框图示意图。

图3为本发明所述基于gerrit的代码管理方法的另一种具体实施方式的方法流程示意图。

图4为本发明所述基于gerrit的代码管理系统的另一种具体实施方式的结构框图示意图。

具体实施方式

为使本发明的技术方案和优点更加清楚,下面将结合附图,对本发明的技术方案进行清楚、完整地描述。

具体实施方式1:

图1为本发明所述基于gerrit的代码管理方法的一种具体实施方式。在本实施方式中,该基于gerrit的代码管理方法,包括工作区状态查看方法、代码改变查看方法和代码提交方法,用于增加研发人员的用户体验,降低代码提交的出错率,提高研发人员的工作效率。

所述的工作区状态查看方法:通过预先创建的库对比命令按钮,查看本地代码仓库与远程代码仓库的文件改变记录。

其中所述的库对比命令按钮,其内封装有gitstatus命令。

使用时,点击所述的库对比命令按钮,即可自动通过文本框显示本地代码仓库与远程代码仓库相比所作的相应操作,比如对代码的增加、删除或修改。

需要说明的是,点击所述的库对比命令按钮后,该库对比命令按钮自动通过命令提示符窗口(cmd.exe)执行其内封装的gitstatus命令,以供研发人员查看本地代码仓库与远程代码仓库的文件改变记录,即供研发人员查看本地代码仓库与远程代码仓库相比所作的各相应操作,比如对代码的增加、删除及修改。

所述的代码改变查看方法:通过预先创建的代码比较命令按钮,查看上述文件改变记录中相应代码文件的代码改变。

其中所述的代码比较命令按钮,其内封装有gitdiff命令。

在本实施方式中,点击代码比较按钮,输入所要比较的代码文件的文件地址和文件名,之后点击确认,即可自动显示该所要比较的代码文件中所作改动的具体信息,比如显示增加的内容、以及显示删减的内容。

其中,本实施方式中通过文本框的形式,自动显示所述的所要比较的代码文件中所作改动的具体信息。

另外在本实施方式中,在点击代码比较按钮、输入所要比较的代码文件的文件地址和文件名、之后点击确认后,有:代码比较命令按钮自动通过命令提示符窗口(cmd.exe)执行其内封装的gitdiff命令,以供研发人员查看其所要比较的代码文件中所作改动的具体信息。

需要说明的是,所述的工作区状态查看方法与所述的代码改变查看方法可配合使用,比如具体使用时,可通过点击库对比命令按钮查看本地代码仓库与远程代码仓库的文件改变记录(记为文件改变记录a),然后分别通过所述的代码比较命令按钮,逐个查看所述文件改变记录a中所涉及的代码文件的代码改变。使用方便。

所述的代码提交方法:通过预先创建的一键提交命令按钮,提交本地代码文件至远程代码仓库。

本实施方式中所述的一键提交命令按钮,其内封装有gitadd命令、gitcommit命令、gitfetchorigin命令、gitrebaseorigin/master命令和gitreveiw命令,用于提交本地代码文件至远程代码仓库。

基于该一键提交命令按钮,能够在代码没有冲突时,一键将本地所有代码提交至远程代码仓库。需要说明的是,在通过一键提交命令按钮提交代码的过程中,如果有冲突则弹出提示信息,用户再根据提示信息通过比对文件进行修改或者撤销。

另外,参见图2,本发明还提供了一种基于gerrit的代码管理系统,该代码管理系统与具体实施方式1中所述的基于gerrit的代码管理方法相对应,包括工作区状态查看单元、代码改变查看单元和代码提交单元,用于增加研发人员的用户体验,降低代码提交的出错率,提高研发人员的工作效率。

其中,所述的工作区状态查看单元,采用库对比命令按钮,用于查看本地代码仓库与远程代码仓库的文件改变记录;所述的代码改变查看单元,采用代码比较命令按钮,用于查看上述文件改变记录中相应代码文件的代码改变;所述的代码提交单元,采用一键提交命令按钮,用于提交本地代码文件至远程代码仓库。

所述的库对比命令按钮,其内封装有gitstatus命令,用于查看本地代码仓库与远程代码仓库的文件改变记录。所述的代码比较命令按钮,其内封装有gitdiff命令,用于查看上述文件改变记录中相应代码文件的代码改变。所述的一键提交命令按钮,其内封装有gitadd命令、gitcommit命令、gitfetchorigin命令、gitrebaseorigin/master命令和gitreveiw命令,用于提交本地代码文件至远程代码仓库。

使用时,通过点击库对比命令按钮,查看本地代码仓库与远程代码仓库的文件改变记录;通过点击代码比较命令按钮,查看文件改变记录中相应代码文件的代码改变;通过点击一键提交命令按钮,提交本地代码文件至远程代码仓库。

需要说明的是,本实施方式中所述基于gerrit的代码管理系统,其各组成部分均已在具体实施方式1中所述的基于gerrit的代码管理方法中进行了说明,在此不再赘述。

具体实施方式2:

图3为本发明所述基于gerrit的代码管理方法的另一种具体实施方式。与具体实施方式1相比,本实施方式2中所述的基于gerrit的代码管理方法,还包括撤销与版本回滚方法和撤销与拉取代码方法,用于增加研发人员的用户体验,降低代码提交的出错率,提高研发人员的工作效率。使用时,研发人员可依据实际需要,选择使用所述的撤销与版本回滚方法、或使用所述的撤销与拉取代码方法。

所述的撤销与版本回滚方法:通过预先创建的放弃操作命令按钮,触发本地代码文件的修改操作被撤销、并使自动回滚到修改前版本。使用时,点击放弃操作命令按钮,后台触发本地代码文件的修改操作(比如对代码的增加、删除及修改)被撤销,并使自动回滚到本地代码文件被修改前。

所述的撤销与拉取代码方法:通过预先创建的强制更新命令按钮,撤销本地代码文件的修改、并拉取远程代码仓库最新代码文件替换本地相应代码文件。使用时,点击强制更新命令按钮后,对本地代码文件的修改(比如对代码的增加、删除及修改)被撤销,并且拉取远程代码仓库最新代码。

本实施方式中所述的放弃操作命令按钮,封装有gitfetch命令和gitreset命令;本实施方式中所述的强制更新命令按钮,封装有gitfetch命令、gitreset命令和gitpull命令。

另外,图4为发明所述基于gerrit的代码管理系统的另一种具体实施方式。与具体实施方式1相比,本实施方式中所述的基于gerrit的代码管理系统还包括撤销与版本回滚单元和撤销与拉取代码单元,用于增加研发人员的用户体验,降低代码提交的出错率,提高研发人员的工作效率。

其中,所述的撤销与版本回滚单元,采用放弃操作命令按钮,用于触发本地代码文件的修改操作被撤销、并使自动回滚到修改前版本;所述的撤销与拉取代码单元,采用强制更新命令按钮,用于撤销本地代码文件的修改操作、并拉取远程代码仓库最新代码文件替换本地代码文件。

其中,所述的撤销与版本回滚单元使用时,点击放弃操作命令按钮,后台触发本地代码文件的修改操作(比如对代码的增加、删除及修改)被撤销,并使自动回滚到本地代码文件被修改前。

其中,所述的撤销与拉取代码单元使用时,点击强制更新命令按钮后,对本地代码文件的修改操作(比如对代码的增加、删除及修改)被撤销,并且拉取远程代码仓库最新代码。

其中,所述放弃操作命令按钮内封装有gitfetch命令和gitreset命令。

其中,所述强制更新命令按钮内封装有gitfetch命令、gitreset命令和gitpull命令。

需要说明的是,研发人员可依据实际需要,选择使用所述的撤销与版本回滚单元、或使用撤销与拉取代码单元。

另外需要说明的是,本发明中所涉及的各命令按钮,各自所封装的相应git命令,均通过命令行方式进行调用与实现。

另外需要说明的是,本发明中所述的所涉及的每个命令按钮,其内封装git命令的命令行均采用现有技术进行实现。

另外还需说明的是,本发明所涉及的各基于gerrit的代码管理方法及系统,在使用之前,均需进行gerrit环境的搭建,比如均进行以下(1)-(5)五个方面的环境准备:

(1)下载安装搭建gerrit服务,并配置好邮箱、key、git仓库(即所述的远程代码仓库)地址;

(2)下载安装python;

(3)安装git-review审核代码;

(4)安装maven,用于管理和编译研发jar包;

(5)安装编译代码工具(比如eclipse开发平台)。

上述(1)-(5)五个方面的环境安装完毕后,可以在所述编译代码工具环境(比如如上所述的eclipse开发平台)中编译调试代码,代码调试完成后,即可基于本发明所述的基于gerrit的代码管理方法及系统对代码进行检查与提交。

以上实施方式仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施方式对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施方式技术方案的范围。

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