还是个实习生的时候,项目管理十分欠缺,会出现很多问题,痛定思痛,决定要改变现状,养成良好的项目管理习惯,看网上工具很多,在这里尝试使用SVN作代码版本控制,使用trac作为项目管理追踪。本文采用的操作系统是ubuntu14.04,配置起来并不难。
1.安装所需软件
只要能联网,linux操作系统装软件都十分简单。ubuntu使用apt-get install 直接进行软件安装。必需的软件包有SVN的subversion,trac以及apache2相关软件包。一句话装完所有包。
sudo apt-get install apache2 subversion libapache2-svn trac libapache2-mod-python libapache2-mod-python-doc
安装完毕,执行以下命令。
a2enmod python
2.配置SVN服务器端
我们需要创建subversion用户组,然后将apache2的www-data用户以及自己的用户加入该用户组。
sudo addgroup subversion sudo usermod -G subversion -a www-data sudo usermod -G subversion -a quick
然后创建svn的根目录,此处svn的根目录为/home/svn。
sudo mkdir /home/svn cd /home/svn
开始创建自己的知识库。
sudo mkdir promanage sudo chown -R root:subversion promanage //需为www-data添加权限,因为后面要用apache $sudo chmod -R g+rws promanage //为组成员赋予对所有新加入文件仓库的文件拥有相应的权限 $sudo svnadmin create /home/svn/promanage //开始一个新的知识库
3.配置SVN访问方式
可以有多种方式访问subversion文件仓库,在此通过WebDAV协议访问SVN文件仓库,需要配置apache,将以下代码添加到/etc/apache2/mods-available/dav_svn.conf中。
<Location /svn/promanage> DAV svn SVNPath /home/svn/promanage AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd # To enable authorization via mod_authz_svn AuthzSVNAccessFile /etc/apache2/dav_svn.authz Require valid-user </Location>
然后创建/etc/apache2/dav_svn.passwd文件,此文件包含了用户授权信息,需添加SVN用户时执行以下命令:
sudo htpasswd -c /etc/apache2/dav_svn.passwd user_name //将此处user_name替换为你需要添加的用户名
执行此命令后,会提示输入密码,输入密码后,该用户就建立成功。然后需要创建/etc/apache2/dav_svn.authz文件,用于控制访问权限。
sudo vim /etc/apache2/dav_svn.authz
输入以下内容:
[/]
user_name=rw
以上内容使得用户user_name对SVN仓库具有读写权限。
至此SVN就配置完毕了,需要重启apache服务。
sudo service apache2 restart
可以使用http://hostname/svn/promanage测试以上配置是否正确。
4.配置Trac环境
sudo trac-admin /home/trac initenv //除了项目名称(promanage)和svn仓库路径(/home/svn/promanage)以外,其余可使用默认. sudo chown -R root:www-data trac //使用www-data:www-data sudo chmod -R g+rsw trac
5.配置Trac访问方式
和SVN一样,创建环境后,trac也需要配置其访问方式,此处可以采用和SVN配置一样的方式。在SVN的配置文件里添加Trac的相关配置即可。
sudo vim /etc/apache2/mods-available/dav_svn.conf
添加以下内容:
<Location /trac/> SetHandler mod_python PythonInterpreter main_interpreter PythonHandler trac.web.modpython_frontend PythonOption TracEnv /home/trac/ PythonOption TracUriRoot /trac/ AuthType Basic AuthName "Trac" AuthUserFile /etc/apache2/dav_svn.passwd require valid-user </Location>
配置完毕,重启apache服务。
sudo service apache2 restart
大功告成,输入http://hostname/trac即可看到自己的工程。