CentOS 5 上配置 Redmine 和 Git
现在我们用 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/
CentOS 5 上配置 Redmine 和 Git的更多相关文章
- git学习笔记:一台电脑上配置两个git账户
如何在一台电脑上配置两个git账户,现在云端仓库很多,有开源中国的 gitee.com 微软的 github.com 还有 gitlab.com 和 bitbucket.org 等等,下面是具体步骤 ...
- Git 在同一台机器上配置多个Git帐号
在同一台机器上配置多个Git帐号 By:授客 QQ:1033553122 实践环境 win10 Git-2.21.0-64-bit.exe TortoiseGit-2.8.0.0-64bit.msi ...
- 一台电脑上配置多个git的ssh key
前几天公司的代码库全部迁移到了阿里云上,在配置git的ssh key的时候遇到了一个问题,那就是自己的密钥在添加时提示已经存在,原来是自己的个人账号上已经添加过这个密钥了,公司分配的账号就不能再添加这 ...
- 怎么在 CentOS 6 上配置私有 NPM 仓库?
Sinopia 是一个简单易用的私有 NPM 仓库服务器.在 CentOS 6 上安装时,遇到如下报错(Node 版本 6.9.1) #error This version of node/NAN/v ...
- 在centos服务器上配置gitlab钩子引发的一系列问题
为了给公司的服务器上搭建gitlab环境并且配置钩子(实现在本地git push之后服务器自动git pull),整了好久,最后终于把问题解决了,下面是记录安装gitlab之后引发的一系列问题: 首先 ...
- 在同一个Linux上配置多个git账户
1.首先在~/.ssh目录下执行 ssh-keygen -t rsa -C "miaoying.new@qq.com" 其中 -C "miaoying.new@qq.co ...
- Centos 5上使用YUM安装GIT
网上搜索的基本上都是一样的内容 1.先安装git依赖的包 yum install zlib-devel yum install openssl-devel yum install perl yum i ...
- Linux(CentOS)上配置 SFTP(附解决Write failed: Broken pipe Couldn't read packet: Connection reset by peer)
#创建sftp组: groupadd sftp #创建一个用户sftpuser: useradd -g sftp -s /bin/false sftpuser #提示: /etc/group 文件包含 ...
- centos 7 上配置mysql 开机启动详解
之前多次在centos7环境下配置mysql开机自启动出现了错误.现留下篇文章已做记录 一.centos7与centos6相比有什么不同: 1 在centos7中服务不在是用service这个命令来启 ...
随机推荐
- Linux_(1)基本命令(上)
一.基本命令1.我是谁 whoami --who am i2.谁在线 who w3.显示当前路径(定位) pwd4.切换目录 cd ~返回主目录 cd ..返回上一级目录5.查看某个目录中的子目录和文 ...
- BZOJ1912或洛谷3629 [APIO2010]巡逻
一道树的直径 BZOJ原题链接 洛谷原题链接 显然在原图上路线的总长为\(2(n-1)\). 添加第一条边时,显然会形成一个环,而这条环上的所有边全部只需要走一遍.所以为了使添加的边的贡献最大化,我们 ...
- 应用内直接跳转到Appstore
iOS开发中,应用内直接跳转到Appstore .进入appstore中指定的应用 NSString *str = [NSString stringWithFormat: @"itms:// ...
- POJ 2014.K-th Number 区间第k小 (归并树)
K-th Number Time Limit: 20000MS Memory Limit: 65536K Total Submissions: 57543 Accepted: 19893 Ca ...
- POJ 3169.Layout 最短路
Layout Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11612 Accepted: 5550 Descripti ...
- [转]11种常见sqlmap使用方法详解
sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了.今天把我一直 ...
- 图解http学习笔记【一】
不想单纯的把书里的知识点罗列一遍 这周,我们的安全代码终于改完了.我在微信上报了个叫 一修读书的课程,现在已经听了6天.感觉并不是很神奇,聊胜于无.倒是趁着当当搞活动买回来好几本书,其中就有这本图解h ...
- JavaScript 内存泄漏教程
一.什么是内存泄漏? 程序的运行需要内存.只要程序提出要求,操作系统或者运行时(runtime)就必须供给内存. 对于持续运行的服务进程(daemon),必须及时释放不再用到的内存.否则,内存占用越来 ...
- SQL 存储过程调用存储过程
研究一个别人做的项目代码看到数据库里有一段存储过程调用存储过程的代码,原来的代码比较复杂. 于是自己打算写一个简单的例子学习一下. 一.首先创建了被需要被调用的存储过程. USE [MSPetShop ...
- spring事件机制
前置知识补充: 程序里面所谓的“上下文”就是程序的执行环境,打个比方:你就相当于web程序,你的房子就相当于web程序的上下文,你可以在家里放东西,也可以取东西,你的衣食住行都依赖这个房子,这个房子就 ...