现在我们用 Trac + Git 来管理所有的项目,早些时候是由 Trac + Subversion 管理的,和 Git 比较起来 Subversion 简直就是龟速。虽然我们前段时间换成了 Git 做版本控制,但是 web 管理界面还主要是在用 Trac 来管理,现在随着项目增多,人员变多,管理 Trac 也变得越来越麻烦。在 Trac 里改个小地方就需要动代码,比如删除 “about and help/guide, search” 导航条还需要改代码,太多需要 hack 的地方。Trac 不直接支持多项目管理(可以通过插件支持),不能很方便的分配权限给不同的项目,不适合多项目管理。现在我们需要一个能象 Github、Google Code 那样能自己注册,自己管理的多用户版本控制和项目管理工具。Redmine 是一个用 Ruby on Rails 写的类似 Trac 的工具,功能比 Trac 丰富一些,内置常用的 SCM,比如:Subversion, Git 和 Mercurial,更重要的是支持多项目多人管理、自己管理自己的项目、界面简单清晰、装上就可以用没有太多需要 hack 的地方,先用一段时间如果感觉好就打算替代 Trac.

安装必要的软件包

首先安装必要的库和软件包:

# yum install zlib-devel curl-devel expat-devel gettext-devel
# yum install mysql-server mysql-devel openssl-devel gcc make

安装和配置 Ruby on Rails

下载 ruby 和 rubygems:

# wget http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7.tar.gz
# wget http://rubyforge.vm.bytemark.co.uk/files/rubygems/rubygems-1.3.5.tgz

编译和安装 ruby:

# tar zxvf ruby-1.8.7.tar.gz
# cd ruby-1.8.7 # ./configure
# make
# make install # cd ext/zlib
# ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
# cd ../../
# make
# make install

编译和安装 rubygems,安装 ruby mysql 支持:

# tar zxvf rubygems-1.3.5.tgz
# cd rubygems-1.3.5 # ruby setup.rb # gem sources -r http://gems.rubyforge.org/
# gem sources -a http://gems.tron.name/gems.rubyforge.org/ # gem install mysql

安装 ruby on rails,指定版本号因为 redmine 需要这个版本:

# gem install rails -v=2.1.2

安装完以后检查一下是否都正确装上:

# gem list

*** LOCAL GEMS ***

actionmailer (2.1.2)
actionpack (2.1.2)
activerecord (2.1.2)
activeresource (2.1.2)
activesupport (2.1.2)
mysql (2.8.1)
rails (2.1.2)
rake (0.8.7)

安装和配置 Redmine

下载 redmine 并增加一个 redmine 用户:

# wget http://rubyforge.org/frs/download.php/66633/redmine-0.8.6.tar.gz
# /usr/sbin/adduser redmine

创建 redmine 需要的数据库:

# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 50
Server version: 5.1.40 MySQL Community Server (GPL) by Remi Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> create database redmine character set utf8;
mysql> grant all on redmine.* to 'redmine'@'localhost' identified by 'yourpassword';
mysql> flush privileges;

配制 redmine 环境和数据库:

# rm -rf /home/redmine
# mv redmine-0.8.6 /home/redmine
# cd /home/redmine/config
# cp database.yml.example database.yml # vi database.yml production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: yourpassword
encoding: utf8 # cd /home/redmine
# rake db:migrate RAILS_ENV="production" # chown -R redmine:redmine /home/redmine
# chmod -R o-rwx,g-rwx /home/redmine

启动 redmine:

# su - redmine -c "ruby script/server webrick -e production"

访问 redmine,打开浏览器访问 http://your-server-ip-address:3000,输入默认用户名密码登陆:admin/admin

安装和配置 Git

安装 Git,默认 respository 没有 git,需要先安装额外的源:

# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm
# yum update # yum install git

配置和使用 Git,注意这里要修改 git_repositories 的权限,以便以 su – redmine 用户启动 redmine server 的时候有权限访问到 git_repositories 目录,所以最好把 git_repositories 建在 redmine 的下面:

# git config --global user.name "vpsee"
# git config --global user.email "admin@vpsee.com" # mkdir -p /home/redmine/git_repositories/project1
# cd /home/redmine/git_repositories/project1
# git init
# git add .
# git commit # chown -R redmine:redmine /home/redmine/git_repositories

Git 的基本使用和配置可以看 “CentOS 5 上配置 Trac 和 Git“。

集成 Git 到 Redmine

安装完 Git 和 Redmine 后,需要集成 Git 到 Redmine,登陆 redmine 后,新建一个 project,在 “settings->respository->SCM” 选择 git,在 “Path to .git directory” 加上 git 路径就可以了,而且还需要让 redmine 知道有 git repository 加进来。

# su - redmine -c "ruby script/runner "Repository.fetch_changesets" -e production"

转自:http://www.vpsee.com/2009/11/centos-install-redmine-git/

  

最新文章

  1. [leetcode] 390 Elimination Game
  2. Python笔记——类定义
  3. AJAX 搜索自动显示练习
  4. XCode编译文件过多导致内存吃紧解决方法
  5. Android的UI设计
  6. List与Set的contains方法效率问题
  7. 仿酷狗音乐播放器开发日志二十五 duilib右键事件的不足的bug修复
  8. 面试题之 query转为obj
  9. ZOJ 3542 2011大连现场赛D题(简单模拟)
  10. ValueStack
  11. ThinkPHP5.0中Redis的使用和封装(原创)
  12. .Net中的AOP系列之《AOP实现类型》
  13. java.io.File类操作
  14. 多线程使用Lock实现生产者实现者代码
  15. SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页
  16. Xamarin 开发过的那些项目
  17. 【题解】P1119 灾后重建
  18. javascript条件语句
  19. php 守护进程(Daemon)
  20. C# 如何使用长度来切分字符串

热门文章

  1. 一个命令查看mysql的所有配置(原创)
  2. 关于js动画简单理解;
  3. React-router4 笔记
  4. 8Q - 献给杭电五十周年校庆的礼物
  5. poj 1321 (简单DFS) 棋盘问题
  6. fedora如何删除某个包且不删除依赖它的相关包
  7. POJ3662或洛谷1948 Telephone Lines
  8. Windows cordova build Error: Could not find gradle wrapper within Android SDK.(转)
  9. Codeforces 791C. Bear and Different Names 模拟构造
  10. Spring ApplicationContext(六)BeanPostProcessor