如何整合JIRA、FishEye、Crucible进行CodeReview

news/2024/7/5 6:20:51

Atlassian的东西相信大家都不陌生,知道Confluence的有木有,用过JIRA的有木有,虽然说这些产品都要收费,不过对于学校和开源组织都可以申请免费License,也可以申请试用。

 

前段时间为了方便做CodeReview,尝试了一下FishEye+Crucible的组合,FishEye 可以方便地查看代码,而Crucible 则是进行CodeReview的利器。因为同属Atlassian,它们又可以与JIRA进行整合,在JIRA中管理项目Issue,根据ID关联代码变更及CodeReview。

1. 系统配置

如何搭建这些系统就不多说了,网上教程很多,FishEye+Crucible有整合好的安装包,可以独立运行,JIRA需要另外安装。Atlassian的官方网站上推荐使用Standalone安装包,如果选择WAR/EAR方式,官方不支持将多个产品安装到同一个Tomcat中 。我选择的安装方案如下:

  • FishEye+Crucible 2.4.3整合独立安装包,例如http://digitalsonic.net:8060
  • JIRA 4.2部署于Tomcat容器中,例如http://digitalsonic.net(资源有限,这个Tomcat上还部署了Hudson和Sonar)
  • 所有数据库统一放在MySQL中(默认的数据库方案是不能适用于正式场景的)

1.1 JIRA端配置

 

在“JIRA Administration”的“FishEye Configuration”中,配置上FishEye的地址http://digitalsonic.net:8060,开启Wiki Render和Crucible集成;在“Repository Mappings”中配置FishEye的代码库与JIRA项目之间的映射关系,这样才能在两者之间进行跳转;最后,在“Trusted Applications”配置受信任的应用程序,同样填上FishEye的地址,按照指示操作就行了。

 

开启“Global Settings”中的“Sub-Tasks”功能,以及“General Configuration”中的“Accept remote API calls”和“Allow unassigned issues”。

1.2 FishEye、Crucible端配置

 

进入“Adminstration”界面,在“Application Links”中添加一个新的链接,直接输入JIRA的地址按照提示操作即可。

FishEye最好能用新版本的,据说老版本在索引代码库时有点问题,占用的存储空间会比较大。

2. 开始Review

开始之前,当然是要在JIRA、FishEye中建立对应的项目,几位关键角色都要在这些系统上有自己的账号。FishEye上可以先对代码库进行初始化扫描,这样哪怕不做CodeReview,看看代码也是好的。

 

创建CodeReview,这里有两种方式:

  1. 在Crucible的界面中点击“Create Review”
  2. 在JIRA的某个ISSUE页面中,进入“Source”标签页,点击“Create crucible review”(这么做的好处是可以直接针对一个ISSUE变更的所有代码创建CodeReview)

如果选择前者,需要在后续的对话框中选择项目,以及CodeReview内容,这里有几种方式,建议选择前3种——浏览变更集(Browse Changesets)、查看代码库(Explore Repositories)、查找文件,我用的比较多的是浏览变更集,其中根据代码库、分支等内容选择CodeReview范围。

 

点击“Done”之后可以编辑本次Review的明细内容,选择Author和Reviewers,可以是同一个人,但最好还是不要自己Review自己,在Edit Review Detail的界面里还可以关联Issue,设定目标,设定有效期等等。

 

开始Review后,可以在左侧选中变更的文件,查看变更内容,在需要添加Review说明的代码上点击一下就能输入文本了。每个Reviewer都可以独立进行Review,分别完成自己的工作,自己“Complete”就行了。

 

待所有人都完成了各自的Review后,就可以总结并关闭本次Review。点击“Summarize”后输入总结,如果确认没什么需要补充的评论 了,直接“Close Review”即可,不然就“Continue Without Close”。这里和JIRA一样,Reivew关闭后,也可以做Reopen。

 

建议在几个系统中同一人的用户名都能统一,并且与SVN中的用户名也能一直,这样查看时会比较方便。另外,为了能关联SVN的变更与JIRA中的Issue,要在提交代码时在注释里填写Issue ID ,不然就关联不上了。

 

 

参考文档:

  1. Integrating JIRA with FishEye
  2. JIRA Integration in FishEye
  3. Crucible User's Guide

(查看官方文档时请注意使用的软件版本)


http://www.niftyadmin.cn/n/3367202.html

相关文章

列表,循环

二维列表 list1 [[1,2,3], [1,2,3], [1,2,3],] print(lsit[1][1]) 列表方法 1、append()  在列表末尾添加新的元素 2、extend()  在末尾一次性追加另一个列表中的多个值 3、insert()  下标处添加一个元素,不覆盖原数据,原数据向后顺延 4、pop() …

script webshell jspWebShell / pythonWebShell / phpWebShell

google shell http://www.jiunile.com/google-shell.html http://goosh.org用命令行来玩google , 输入ls可以看目录内容. shell爱好者们可以来玩下 http://simplejee.group.iteye.com/group/wiki/2105-simplejee simplejee是一个开源的面向j2ee初学者的小项目。该项目里提供…

Tomcat访问日志分析

常使用web服务器的朋友大都了解,一般的web server有两部分日志: 一是运行中的日志,它主要记录运行的一些信息,尤其是一些异常错误日志信息 二是访问日志信息,它记录的访问的时间,IP,访问的…

RESTful Web Services Cookbook中文版译者序

从去年开始我一直在翻译ORelly的《RESTful Web Services Cookbook 》,翻译的过程有些纠结,导致整本书的进度比预期的要慢很多,但一切原因都不能影响翻译的质量,我依然坚持这样一个原则。再过一段时间这本书就能与读者见面了&#…

project site_dns

在国内网上我看到的最多的内容: http://blog.sina.com.cn/s/blog_40488d6d0100052w.html The connection was reset The connection to the server was reset while the page was loading. * The site could be temporarily unavailable or too busy. Try again …

ovs加dpdk在日志中查看更多运行细节的方法

想查看更多dpdkovs的更多运行细节,可以采用以下方法,增加更多运行日志。 在终端输入:ovs-appctl vlog/set dpdk:file:dbg ovs-appctl vlog/set netdev_dpdk:file:dbg 并查看 ovs-vswitchd.logs(在/usr/local/var/log/openvswitch目录下&#…

基于Ubuntu Docker环境下进行以太坊实践

本文是指导以太坊技术爱好者,通过基于Ubuntu环境下通过docker来进行以太坊的客户端安装和调试的指导教程。 目录 1、实践环境要求 2、Ubuntu版本说明 3、Docker安装 4、Ethereum安装与实践 5、ZSH小工具推荐 1 实践环境要求 1.1 概述 https://docs.docker.com/engin…

写在2011的最后一天

一晃明天又是新的一年了,打开博客,这才发现,今年我只在这里写了没几篇东西。想想过去的一年里我都做了什么? 本职工作,上半年实在是有些无聊,甚至到了一度觉得这里已经不需要我了一样。好在下半年回到了能…