GitLab中添加Redmine集成

目前并不了解在GitLab中添加Redmine的集成有什么作用,但我还是添加了。 GitLab中集成Redmine的设置方法很简单,只要填写三个链接就行。 这是其中一个项目中的配置 alt text

Redmine中添加GitLab中的版本库

Redmine并不会替你克隆版本库,需要你在Redmine所在的服务器上克隆好版本库后,并且Redmine运行的用户可以访问版本库地址,然后在Redmine中添加版本库所在路径。

克隆版本库

在你想要存放版本库信息的目录下克隆版本库,因为Redmine不操作代码文件,所以只需要版本提交信息即可,所以我克隆时加了–mirror参数

git clone --mirror <GitLab上的仓库地址>

Redmine中添加版本库

在项目==》配置==》版本库界面中新建版本库 alt text

库路径为上一步克隆的版本库的路径。我使用的是绝对路径,不确定相对路径是否可行。 标识用于区分显示,最好跟版本库统一 alt text

Redmine安装WebHook插件

Redmine官方的版本库更新方式是用的自带的Web Server功能,但我并没有采用,使用的是插件的方式对接GitLab的WebHook。 Redmine的WebHook插件:https://github.com/koppen/redmine_github_hook 在Redmine目录下的Plugins内克隆WebHook插件,然后返回Redmine目录,执行安装指令

bundle config set --local without "development test"
bundle install

GitLab设置WebHook

根据插件的连接说明,在GitLab仓库中的WebHook设置中添加对应链接 alt text

project_id为Redmine中对应项目主界面(概括)的url路径中的标识 alt text

git commit记录与Redmine项目问题进行关联

git commit添加问题索引

在代码提交到版本库时,可以在commit提交日志中加上Redmine项目问题的ID,指向该问题,方便后续在代码中对该问题的修改进行索引回溯。 索引的格式为:

#<ID>

git commit添加问题状态修改

还可以设置在commit提交日志中的关键字对任务的状态进行修改,比如将任务设置为已解决,这样就不需要在Redmine中手动修改问题状态,还能与提交修订与问题的状态修改做关联,方便后续索引回溯。 alt text

问题状态修改示例

下图中的commit注释,将ID为51的问题设置为已解决

注释 fixed #51

alt text alt text