持续集成学习笔记-入门篇(9)团队管理:成员&权限设置、成果追踪与结果通知

笔者认为,即便项目团队内只有一个人做开发,CI的支持作用也很大。何况实际工作是团队作战,哪怕这个团队只有35个人。此时,团队成员管理中的一部分工作就与持续集成挂上钩了。笔者目前能想到的主要有三方面工作:

l  成员及权限设置:项目成员的文档、源代码操作权限设置;内部网站上的成员信息展示

l  成果追踪:项目成员何时、提交了哪些源代码,这些工作应可以追踪到

l  结果通知:构建结果应能自动定位问题来源,并通知相关的项目成员

头一个方面实际上是后两个的前提。SVNJenkinsMaven site都或多或少地涉及到用户权限或信息设置问题。因此,第一个问题就产生出来了:应该在哪里设置用户权限?

理想状态下,当然希望能象商业软件(如Rational Rose)那样,只在一个地方设置用户信息和权限(开发权限、构建权限等),然后各类工具都可以自动获取信息。具体到笔者的学习过程中,实际上就是希望在SVN中设置好用户信息和权限,在Maven site中可以实时显示出来,并且Jenkins也能读取SVN的用户信息,从而直接针对用户设置构建权限。

SVNJenkinsMaven毕竟是三个独立的工具,即便是号称整合了Jenkins uberSVN,也没法做到JenkinsSVN共用同一套用户信息。不过,能用到CI服务器的CI管理员本来就比软件开发的成员数量要少很多,所以这里我们暂不用考虑CI服务器(Jenkins)的用户及权限设置问题,而只把精力集中到软件开发团队中的成员,这样就只涉及到SVNmaven两个了。

不幸的是,即便如此,用户的信息也要设置两遍(SVNmavenpom.xml)。注意,这两遍中,成员的名字(name)一定要设置成一样,这样maven才能与SVN的用户联系对应起来。再通过一些插件(比如maven-changelog-plugin)的帮助,实现各工具的相互配合,从而完成上述三方面的工作。

 

一、设置成员信息和权限

(一)SVN的成员信息、开发权限设置

在一个非开源的商业软件开发工作中,需要给予不同成员不同开发权限,以保护公司的核心技术机密。

但是直接手工进行svnserve.confpasswdauthz三个文件中的用户和权限设置很容易出错,而且就算按照官方文档指南步骤一步步来,往往也会发现权限设置无效。这主要是因为SVN的服务配置后面的原理比较多样和复杂导致的。笔者作为菜鸟,是通过VisualSVN Serve

你可能感兴趣的:(maven,svn,版本控制系统,工作,properties,permissions)