1 禅道介绍
1.1 关于禅道项目管理软件
1.2 禅道介绍PPT下载
1.3 如何获得支持
1.4 关注我们
2 安装禅道
2.1 选择适合您的安装方法
2.2 使用云禅道在线项目管理服务!
2.3 windows用一键安装包安装(推荐)
2.4 linux用一键安装包
2.5 禅道一键安装包里安装蝉知和然之
2.6 linux下用lampp集成包安装
2.7 使用源码包安装(各系统通用)
2.8 禅道虚拟机运行环境安装(virtualbox)
2.9 华芸NAS在线安装
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 自定义必填项功能
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 集成webhook
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 禅道项目管理软件打包规范1.1版本
10 其他相关
10.1 禅道所使用到的第三方代码
10.2 禅道FAQ
10.3 如何帮助禅道项目
10.4 禅道商业服务
10.5 禅道项目的贡献者
10.6 历史修改记录

集成禅道和git

2013-09-02 15:28:55
朱金勇
32996
最后编辑:刚哥 于 2017-10-27 10:48:19
简介:本篇文章讲述如何配置禅道集成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分钟执行一次。windows下面使用计划任务,linux下面使用crontab。
6.2 配置的代码库也要使用定时任务同步更新,每隔5分钟git pull一下。

    评论列表
    jyin 2017-10-31 16:36:42
    请问可以选择git的分支吗?
    石洋洋 2017-10-31 17:40:37
    目前只能集成 master 分支。
    月光 2017-10-27 17:36:34
    执行syncgit.sh时报错,git客户端是配对的吧
    [root@ci1 bin]# ./syncgit.sh
    2017-10-27 17:34:21 begin repo 1
    2017-10-27 17:34:21 start from revision 0
    sh: /user/bin/git: No such file or directory
    sh: /user/bin/git: No such file or directory
    Some error occers:
    The command is /user/bin/git log --stat=1024 --pretty=format:%an*_*%cd*_*%H*_*%s
    [root@ci1 bin]# whereis git
    git: /usr/bin/git /usr/share/man/man1/git.1.gz
    禅道-Bee 2017-10-27 18:20:05
    ls -la /usr/bin/git 看下结果
    禅道-Bee 2017-10-27 18:21:52
    可以联系下官网顶部的商务QQ,邀请加入禅道技术交流群,群里截图下配置。
    Zc 2017-10-27 17:16:22
    执行了./syncgit.sh 报错这个 Class 'PDO' not found in /opt/zbox/app/zentao/framework/base/router.class.php on line 2125
    Class 'PDO' not found in <strong>/opt/zbox/app/zentao/framework/base/router.class.php</strong> on line <strong>2125</strong> when visiting <strong></strong>
    禅道-Bee 2017-10-27 18:23:05
    禅道可以正常访问吗?检查下/opt/zbox/app/zentao/config/my.php中的数据库连接信息是否正常?
    夏木木 2017-10-26 17:24:42
    D:\xampp\zentao\bin>D:\xampp\php\php.exe D:\xampp\zentao\bin\ztcli "http://www.xhtours.com
    68.61.79:81/zentao/git-run"

    Warning: Creating default object from empty value in D:\xampp\zentao\config\conf
    ig.php on line 19
    2017-10-26 17:24:21 begin repo 1
    2017-10-26 17:24:21 start from revision 0
    'D:\Program' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    'D:\Program' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    Some error occers:
    The command is D:\Program Files\Git log --stat=1024 --pretty=format:%an*_*%cd*_*
    %H*_*%s
    石洋洋 2017-10-26 17:33:22
    检查一下 D:\xampp\zentao\config\config.php 19行 看看哪里配置有错误。
    shuai 2017-09-22 14:39:56
    想请问下禅道 能取代gitlab实现和jenkins+git结合么?要是可以的话去哪里能获取到jenkins连接所需要的连接地址呢?
    石洋洋 2017-09-22 18:24:43
    禅道是项目管理软件,管理软件研发过程的,git是代码的版本管理,不一样的,不能相互取代。
    吴蓓蓓 2017-07-21 14:44:18
    我想问一下禅道集成git的好处是神马?
    石洋洋 2017-07-21 15:20:14
    看一下本文档的 5.4条 是禅道中的展示方式,是在 需求、任务、bug 的历史记录中显示的。
    大旺 2017-06-12 15:51:17
    怎么管理项目的git 到版本上尼
    石洋洋 2017-06-12 17:24:49
    具体描述一下,不是太理解问题。
    风林火山 2017-05-22 14:17:26
    禅道可以和gitlab进行集成吗?
    石洋洋 2017-05-22 17:05:21
    可以的。
    hanfuyou 2017-03-22 12:56:58
    执行syncgit.sh的时候报,PHP Fatal error: Class 'PDO' not found in /opt/zbox/app/zentao/framework/base/router.class.php on line 1863 这是什么问题?
    石洋洋 2017-03-22 14:24:34
    重启一下禅道的服务再执行一下这个脚本看看有什么提示,还是这样的话 加QQ: 1492153927,他会邀请加入禅道官方QQ群,在群里提问一下。
    hanfuyou 2017-03-18 12:45:04
    [root@solr1 bin]# ./init.sh
    Please input your php path:(example: /usr/bin/php)
    找这个位置php我怎么填写。是要安装一个客户端。还是怎么配置。
    石洋洋 2017-03-19 09:29:11
    这个需要填写禅道所在电脑上php程序所在的目录。
    1/3
    发表评论
    评论通过审核后显示。