1. 安装禅道
1.1  选择适合您的安装方法
1.2  使用云禅道在线项目管理服务!
1.3  (推荐)windows用一键安装包安装
1.4  (推荐)linux用一键安装包
1.5  linux下用lampp集成包安装
1.6  使用源码包安装(MAC系统)
1.7  MAC下用XAMPP安装禅道
1.8  MAC下用XAMPP-VM安装禅道
1.9  禅道一键安装包里安装蝉知和ZDOO
1.10  禅道一键安装包里安装渠成软件
1.11  使用源码包安装(各系统通用)
1.12  宝塔面板安装禅道
1.13  华芸NAS在线安装
1.14  Centos7.4系统下安装httpd,mariadb,php7.2环境运行禅道
1.15  Centos8系统下安装httpd,mariadb,php7.2环境运行禅道
1.16  安装ioncube扩展
1.17  安装swoole扩展
1.18  Docker方式部署禅道
2. 禅道介绍
2.1  关于禅道项目管理软件
2.2  如何获得支持
2.3  关注我们
3. 升级禅道
3.1  选择和自己环境对应的升级方式
3.2  通过源代码方式升级(通用)
3.3  windows一键安装包的升级
3.4  linux一键安装包升级
4. 创建分组和用户
4.1  建立部门结构
4.2  添加一个用户帐号
4.3  批量维护帐号
4.4  设置分组,建立权限体系
5. 最简使用
5.1  使用禅道来进行项目任务管理
5.2  只使用禅道来做bug管理
5.3  只使用禅道来进行产品管理
5.4  个人使用禅道来做事务跟踪管理
6. 基本使用
6.1  禅道使用的基本流程和产品、研发、测试之间的三权分立
6.2  敏捷开发及scrum简介
6.3  禅道和scrum的对应关系
6.4  禅道的新手教程
6.5  创建第一个产品
6.6  添加第一个需求
6.7  开始第一个项目
6.8  确定项目要完成的需求列表
6.9  为需求分解任务
6.10  提交bug
6.11  视频教程:第一个演示项目
6.12  维护联系人
6.13  禅道的自定义功能
6.14  导入excel、csv参考文档
6.15  文档管理
6.16  工作方式的切换
6.17  操作获取积分功能
6.18  自定义必填项功能
6.19  如何排查产品、项目是否有访问权限
6.20  年度总结,工作内容统计一览表说明
7. 进阶使用
7.1. 使用流程
7.1.1  禅道使用流程图解
7.2. 个人管理
7.2.1  使用待办进行个人事务管理
7.2.2  关注需要自己处理的任务、需求、bug
7.2.3  通过我的档案查看或者修改个人信息
7.2.4  视频教程:禅道使用之个人篇
7.3. 产品经理篇
7.3.1  维护产品
7.3.2  维护产品线
7.3.3  创建和评审需求
7.3.4  变更和评审需求
7.3.5  需求的状态和研发阶段
7.3.6  需求的注意事项
7.3.7  维护产品模块
7.3.8  建立发布计划
7.3.9  建立发布
7.3.10  路线图
7.3.11  文档管理
7.3.12  主持产品会议
7.3.13  参与项目管理、演示和总结
7.3.14  需求的基本统计报表
7.3.15  视频教程:禅道使用之产品经理篇
7.4. 项目经理篇
7.4.1  建立项目
7.4.2  组建项目团队
7.4.3  确定项目要完成的需求列表
7.4.4  组织进行任务分解
7.4.5  召开每天的站立会议
7.4.6  通过燃尽图了解项目的进展
7.4.7  通过各种列表的各种功能了解项目进展
7.4.8  召开演示会议和总结会议
7.4.9  项目任务基本的报表统计
7.4.10  视频教程:禅道使用之项目经理篇
7.5. 开发团队篇
7.5.1  参加项目计划会议,分解任务
7.5.2  领取任务,并每天更新任务
7.5.3  通过看板和树状图查看任务
7.5.4  创建版本
7.5.5  申请测试
7.5.6  解决bug
7.5.7  文档管理
7.5.8  确认bug
7.5.9  视频教程:禅道使用之开发团队篇
7.6. 测试团队篇
7.6.1  维护bug视图模块
7.6.2  提交bug
7.6.3  验证bug,关闭
7.6.4  激活bug
7.6.5  找到自己需要的bug
7.6.6  维护测试用例视图
7.6.7  创建测试用例
7.6.8  测试套件、报告和公共用例库的维护
7.6.9  管理测试版本
7.6.10  执行用例,提交Bug
7.6.11  查看报表统计
7.6.12  视频教程:禅道使用之测试团队篇
8. 维护配置
8.1. 维护禅道
8.1.1  初始化管理脚本
8.1.2  备份禅道
8.1.3  恢复删除的资源
8.1.4  如何更新燃尽图
8.1.5  一键安装包如何实现mysql异机连接
8.2. 配置禅道
8.2.1  设置是否允许匿名访问
8.2.2  如何配置email发信
8.2.3  禅道云发信
8.2.4  如何成为超级管理员
8.2.5  配置禅道系统为静态访问
8.2.6  去掉禅道访问地址中的zentao
8.2.7  集成禅道和svn
8.2.8  集成禅道和git
8.2.9  在第三方应用中集成禅道
8.2.10  第三方应用配置免密登录禅道
8.2.11  第三方应用集成禅道客户端进行消息通知
8.2.12  集成webhook
8.2.13  集成ZDOO
8.2.14  客户端集成
8.2.15  禅道的翻译功能
8.2.16  浏览器通知的设置
8.2.17  集成钉钉工作消息通知
8.2.18  集成企业微信应用消息通知
8.2.19  集成飞书群机器人
8.2.20  集成飞书消息通知
8.2.21  集成版本库、集成Jenkins,并进行构建
8.2.22  解决一键安装包密码口令弱的问题
9. 定制开发
9.1  二次开发机制
9.2  禅道的目录结构
9.3  找到要修改的文件
9.4  禅道的数据库结构
9.5  公用模块--common
9.6  如何登记菜单
9.7  如何登记权限
9.8  示例:如何修改禅道的语言提示?
9.9  示例:创建bug时可以设置优先级字段
9.10  使用在线扩展编辑器
9.11  二次开发编辑器和翻译功能限制使用说明
9.12  禅道项目管理软件打包规范1.1版本
10. 其他相关
10.1  禅道所使用到的第三方代码
10.2  禅道FAQ
10.3  如何帮助禅道项目
10.4  禅道商业服务
10.5  禅道项目的贡献者
10.6  历史修改记录

集成禅道和git

2013-09-02 15:28:55
朱金勇
120427
最后编辑:王怡栋 于 2021-07-06 14:49:53
分享链接
摘要:本篇文章讲述如何配置禅道集成git。
禅道从5.0版本开始内置了git集成功能,把禅道的任务、Bug等与代码进行关联,方便用户查看。下面向大家讲解如何配置禅道集成git。

一、 git集成机制说明

git集成的基本机制是:分析提交代码时的注释 => 得出相应的story, task, bugID => 写入到禅道的数据库。
实现上述功能有两个方案,一个方案是采用git自带的钩子机制,当有代码提交的时候,触发一个钩子脚本,然后分析注释,得出相应的bug, story或者task的id号,然后调用禅道的api,将相关的记录写入数据库。还有一个方案是通过git客户端软件的log命令,来获得所有的提交记录,然后分析,得出相应的id,写入数据库。
上述两个方案各有各自的优缺点,我们终是选择了第二个方案。因为第二个方案调试比较好调试,部署也相对方便,同时可以解析之前的所有记录,有比较好的灵活性。

二、在禅道所在机器上面部署git命令行客户端。

git命令行客户端是指git自带的git命令。windows下面是git.exe,linux下面是没有后缀的git。
目前禅道只能集成禅道所在的机器上的git仓库,如果是远程仓库需要在禅道所在机器上克隆一个仓库(需要定时同步数据)进行集成。
如果是linux机器,需要安装git的客户端。rhel,centos可以用yum安装git, debian下面可以用apt-get install。

三、配置禅道关于git的参数

从禅道开源版12.1版本开始,配置GIT代码库方法是:请使用管理员登录禅道,在集成 - 代码库 中进行配置(具体方法在  https://www.zentao.net/book/zentaopmshelp/393.html 集成版本库、集成Jenkins,并进行构建),无须再按步骤三操作,配置好后看步骤四。

3.1 代码位置
git模块的配置文件位于zentao/module/git/config.php。您可以直接修改这个文件,但建议您将改动保存到git/ext/config/git.php中。这样将来我们升级,就不会覆盖您的配置文件。
3.2 配置内容
1.  git客户端命令的位置。
2.  库(repo): 可以配置多个库。
下面让我们用实际的例子来说明。
3.2.1 如下图,找到图中红框标志的位置

3.2.2 修改代码
写法如下面例子所示

$config->git->client 填写git客户端路径;
$config->git->repos[$i]['path'] 填写git库的路径
3.3 配置多个库
3.3.1 同上,在同一个文件里找到如下代码

3.3.2 修改代码
①将代码中的“/*”和”*/“删除,其余修改同上,注意:$i ++ 不可修改。
②如果还有git库,复制此段代码,进行同样的配置即可。

四、代码提交注释格式

开发者在提交代码到git的时候,需要在备注里面注明此次修改相关的需求,或者任务,或者bug的id。比如下面的格式:
bug#123,234, 1234,也可以是bug:123,234 1234,id列表之间,用逗号和空格都可以。
story#123 task#123
bug, story, task是必须标注的。:)

五、执行git同步命令

如管理员登录禅道后,有后台 - 系统 - 定时功能,则根据实际情况在这里设置执行时间周期即可( moduleName=git)

5.1 参考 《初始化管理脚本》这篇文章初始化命令行的脚本。
5.2 进入到zentao/bin/目录下面,执行syncgit.bat或者syncgit.sh脚本( 无此脚本文件,可以点击链接 《初始化管理脚本》)。
5.3  程序运行的效果图:

5.4 查看相应的bug:

六、部署定时任务

6.1 上述命令部署好之后,将该命令加入定时任务。比如可以5分钟执行一次。

方案1:网页登录禅道 后台-系统-定时,开启计划任务后 点击 激活 同步git 脚本, 注: 修改后需要执行如下操作:后台-系统-定时 关闭 =》重启apache服务 =》 开启 后台-系统-定时

方案2:使用操作系统自带的计划任务功能:windows下面使用控制面板-计划任务,linux下面使用crontab。

6.2 配置的代码库也要使用定时任务同步更新( 需要自己写同步脚本,部署在操作系统的定时任务中),每隔5分钟git pull一下。

七、集成GitLab类型版本库

15rc3版本开始,禅道集成 GitLab类型版本库。
集成成功后,可以同步版本库历史记录,进行目录浏览,代码查看、追溯、diff 功能操作。
下面给大家介绍怎么集成 GitLab类型版本库。

7.1 创建 GitLab类型版本库

点击DevOps--版本库页右上角的 创建 按钮,即可进入版本库的创建页面。

在类型点击下拉选择 GitLab。

 接下来需要填写 GitLab地址和Token。

GitLab地址:

填写 GitLab里的项目所在的服务器地址,即可访问到 GitLab里的项目的服务器地址。

比如我的 GitLab的项目访问地址是: https://gitlab.abc.com,那么 GitLab地址就填写: https://gitlab.abc.com即可。

Token:

登录 GitLab在 Settings 的 Access Tokens 里按页面提示填写,生成 Token即可。

按照页面提示,根据使用需要填写内容信息。

填写完信息后,点击创建按钮。

Token 创建成功后,会提示在页面顶部。


创建 Token成功页面底部,还显示着之前 创建成功的 Token列表信息。

填写 GitLab地址和Token后,项目会自动同步显示 GitLab里所有项目。

可以在下拉里选择。

选择了项目后,名称会自动填充为该项目的名称,点击保存即可。

保存成功后,就开始自动同步项目的代码。

7.2 同步 GitLab 项目的代码

创建版本库后,开始同步代码。


同步完成后可以在代码里查看,也可以在版本库的列表里查看到GitLab类型的版本库。


7.3 代码的查看、追溯、diff

浏览查看代码目录

追溯

比较差异(diff功能)

评论列表
mrwang 2021-10-13 13:09:26
配置后运行syncgit.bat一直提示you must set one git repo,可是config.php都写好了呀;
<?php
/**
* encodings: 提交日志的编码,比如GBK,可以用逗号连接起来的多个。
* client: Git客户端执行文件的路径,windows下面是git.exe的路径,linux下面比如/usr/bin/git
* repos可以是多个,需要设定某一个库的访问路径。
*
* encodeings: the encoding of the comment,can be a list.
* client: the git client binary path. Unser windows, find the path of git.exe. Under linux, try /usr/bin/git
* Can set multi repos, ervery one should set the path.
*
* 例子:
* $config->git->client = 'D:/Program Files/Git/bin/git.exe'; // c:\git\git.exe
* $config->git->repos['pms']['path'] = 'E:/zentaoGit'; // 'https://gitee.com/njxgznkj/default-warehouse.git'; // c:\repo\pms
* $config->git->repos['pms']['encoding'] = 'utf-8';
*
*/
$config->git = new stdClass();
$config->git->encodings = 'utf-8, gbk';
$config->git->client = 'D:\Program Files\Git\bin\git.exe';

$i = 1;
$config->git->repos[$i]['path'] = 'E:\zentaoGit';
马超 2021-10-13 17:32:25 回复
您好,目前禅道已经不使用这种配置方式了,可以直接在禅道页面直接配置集成git,不需要通过config.php 文件中配置。可以清空一下config.php 文件中录入内容,到禅道页面中配置一下 ,参考手册:https://www.zentao.net/book/extra/549.html

徐东林 2021-10-12 18:32:25
docker搭建的禅道如何集成gitlab,连接版本库失败,请填写正确的用户名、密码和版本库地址!
执行命令:/usr/bin/git tag 2>&1 错误结果(127): sh: 1: /usr/bin/git: not found
马超 2021-10-13 08:47:05 回复
禅道集成gitlab 是不需要填写git客户端地址的,可以看下集成配置页面类型是否选择的是gitlab,可以参考下gitlab 的集成手册集成一下:https://www.zentao.net/book/extra/547.html
如果还有其他疑问, 可以加一下左上角的商务联系方式,商务邀请进群后沟通。
星真竹马 2021-09-06 16:47:35
docker社区版v15.3,Git代码库已能正常同步,但Bug无法关联显示代码,是什么问题?
王林 2021-09-06 17:36:23 回复
是说bug历史记录里没展示关联信息吗?是按 bug #001 “****” 这样的格式提交的注释吗?
另外可以添加页面上方QQ,邀请进群后截图咨询下具体问题呢
星真竹马 2021-09-06 18:03:30 回复
把git commit的关键字改一下就可以了。"Bug #49", Bug首字母要大字,触发一次成功后,原来小写的bug注释也一并出来了
王林 2021-09-07 09:03:14 回复
好的,这里我们也测试下,谢谢反馈
2021-08-23 16:52:15
请问15版本支持集成gitee上的代码不,是否有相关经验文档可以参考呢
马超 2021-08-23 17:01:04 回复
可以把码云的git库克隆到禅道的所在的服务器,和禅道集成可以使用git库物理路径进行配置。git库同步问题,可以写一个定时同步脚本,定时同步克隆的git库。
如果还有其他疑问, 可以加一下左上角的商务联系方式,商务邀请进群后沟通。
mkxue 2021-08-02 16:22:55
禅道15集成gitlab后,还需要设置定时任务同步吗?
禅道-Bee 2021-08-02 16:50:05 回复
admin 后台 系统 定时开启同步就好,其他的地方不用再配置了。
imnpc 2021-06-07 10:32:39
集成git以后拿不到 commit 列表,
./syncgit.sh |more
2021-06-07 10:30:28 begin repo 1
2021-06-07 10:30:28
张玉洁 2021-06-07 13:26:53 回复
参考禅道中集成--指令列表,看一下提交代码时填写的注释格式是否正确。如果按格式填写还是无法显示,可以添加网页上方QQ,邀请进群,方便截图排查问题。
chris 2021-06-03 11:40:28
能否在任务bug页显示git的提交信息?
禅道-Bee 2021-06-03 13:16:06 回复
可以参考下这篇手册第六部分:https://www.zentao.net/book/zentaopmshelp/393.html
如果配置过程中有问题,可以联系官网顶部商务QQ,邀请加入技术交流群沟通。
杨波 2021-06-02 14:56:17
15.0版本在进行gitlab同步时,基本属于卡死状态,这个如何解决?对于小项目,同步很快,对于仓库文件较多,较大时,同步很慢,基本一直停在正在同步中,这个问题如何解决?
禅道 - 闫敏 2021-06-02 17:12:59 回复
可以联系首页商务同事 ,添加下我们的技术交流群 ,沟通下
Gavin 2021-04-19 18:23:39
因为安全原因,需要检测客户端版本,请将版本号写入文件 C:\ZenTao\xampp\zentao\tmp\log\version_607d516611407.log
可以执行命令:C:\Git --version > C:\ZenTao\xampp\zentao\tmp\log\version_607d516611407.log
禅道-Bee 2021-04-20 09:05:13 回复
根据提示,在服务器上,CMD运行:C:\Git --version > C:\ZenTao\xampp\zentao\tmp\log\version_607d516611407.log
建议和贵公司技术同事一起操作。
colderboy 2021-02-23 13:22:12
配置好git后执行syncgit.sh只显示这个是什么原因?
[root@localhost bin]# ./syncgit.sh
2021-02-23 13:21:31 begin repo 1
2021-02-23 13:21:31

repo #1: /www/wwwroot/www.zentao.com/hisCode finished
禅道-Bee 2021-02-23 16:04:29 回复
联系下官网顶部商务QQ,邀请加入技术交流群,群里方便截图确认问题。
1/9
发表评论
评论通过审核后显示。