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  华芸NAS在线安装
1.13  Centos7.4系统下安装httpd,mariadb,php7.1环境运行禅道
1.14  Centos8系统下安装httpd,mariadb,php7.2环境运行禅道
1.15  安装ioncube扩展
2 禅道介绍
2.1  关于禅道项目管理软件
2.2  禅道介绍PPT下载
2.3  如何获得支持
2.4  关注我们
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  集成版本库、集成Jenkins,并进行构建
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
朱金勇
74516
最后编辑:王怡栋 于 2020-03-11 09:09:33
简介:本篇文章讲述如何配置禅道集成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的参数

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同步命令

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一下。

评论列表
飞沙 2020-04-02 16:00:58
提交日志显示乱码如何解决,已经配置了编码
$config->git->repos[$i]['encoding'] = 'utf-8';
禅道-Bee 2020-04-02 17:30:38
实在不好意思,目前只有这条信息,不太好确认具体问题呢。建议联系下官网顶部的商务QQ,邀请加入技术交流群,群里具体截图看下提示信息,方便确认问题。
禅师 2020-03-14 16:11:16
点击任务下边的view或者diff按钮,提示404
The requested URL /git-cat--b639cd467a10811ab3d5821e8745e537469996b3.html was not found on this server.
The requested URL /git-diff--b639cd467a10811ab3d5821e8745e537469996b3.html was not found on this server.
禅道-Bee 2020-03-16 10:34:11
可以检查下同步脚本中,禅道访问网址后面加/zentao/了吗?例如 http://192.168.1.168/zentao/
Charles 2020-03-10 15:22:06
请问一下有没有将禅道的BUG 和 GitLab Issue 同步的方法,例如测试团队在禅道上创建的BUG, 是否可以转化为GitLab 的Issue; 因为希望把 源代码的commit 与Issue 和BUG 编号关联起来
马超 2020-03-10 17:23:27
抱歉,目前没有这个方法。
tantiancai 2020-03-04 13:24:54
$config->git->repos[$i]['path']中设成中文文件夹就会提示
fatal: not in a git directory
fatal: not a git repository (or any of the parent directories): .git
石洋洋 2020-03-04 13:52:54
目录目前不支持中文和空格解析,需要切换一下git库的目录。
Lip 2020-03-02 16:36:16
2020-03-02 16:35:49 begin repo 1
2020-03-02 16:35:49 start from revision 0
fatal: not in a git directory
fatal: not a git repository (or any of the parent directories): .git
Some error occers:
The command is c:\Git\bin\git.exe log --stat=1024 --stat-name-width=1000 --name-status

这个报错是什么问题
王林 2020-03-02 16:57:36
看下禅道目录下zentao(pms)/tmp/git/目录下是否有1这个文件,有的话删除再同步试一下。
Lip 2020-03-02 17:01:04
该目录为空
张玉洁 2020-03-02 17:37:18
可以添加一下页面上方的QQ,邀请进群,方便截图排查问题。
lasdaybg 2020-02-13 15:20:58
请问docker版的禅道该如何配置?谢谢
禅道-Bee 2020-02-13 16:22:20
本地有测试过,单机docker环境安装禅道的话,对性能损耗比较严重,建议直接安装在宿主机。
刘凌 2019-12-19 17:30:54
执行syncgit.sh之后提示 you must set one git repo,是怎么回事
张玉洁 2019-12-19 17:33:17
配置文件中这个参数$config->git->repos[$i]['path'] 填写git库的路径了吗?可以添加网页上方QQ,邀请进群,方便截图排查问题。
刘凌 2019-12-19 17:55:57
都已经按照上面的教程改好了的
石洋洋 2019-12-20 08:52:55
如果功能还不能正常使用请加本网页最上方的qq,在群里截图交流一下。
刘凌 2019-12-19 11:27:25
不知道通过git的钩子机制是怎么实现呢
石洋洋 2019-12-19 16:40:47
相关功能实现的代码是开源的,贵公司可以直接查看一下代码:http://www.zentao.net/book/zentaopmshelp/156.html
ray 2019-10-29 14:27:23
禅道集成Git是关联Git主分支,能不能切换到其它分支,例如测试分支
马超 2019-10-29 16:23:39
目前禅道只支持集成git主分支,不支持切换分支。
Nick 2019-10-09 15:30:54
这个只能用于在git上,gitbal不能用到吗?
张玉洁 2019-10-09 17:38:52
由于gitlab对git库访问权限有要求,而禅道集成git库时需要git库有apache的访问权限,这方面有冲突,所以暂时无法直接集成gitlab。可以在本地克隆一个git库,定时同步这个克隆git库中的数据。将禅道和这个克隆的git库进行集成。
1/7
发表评论
评论通过审核后显示。