// 查看当前git版本
$ git --version
// 查看当前git版本
$ git --version
// 如果小于1.7.10则先卸载
$ yum remove git
// 下载最新的git并安装
$ wget -O git-src.zip https://github.com/git/git/archive/master.zip
$ unzip git-src.zip
$ cd git-src
$ make prefix=/usr/local all
$ make prefix=/usr/local install
$ ln -fs /usr/local/bin/git* /usr/bin/
我的版本是 1.7.1 没有卸载 直接进行的下一步安装
mkdir /tmp/ruby && cd /tmp/ruby
![](https://box.kancloud.cn/dc70198c93447ce8fe0308881e64e01d_760x108.png)
curl --progress ftp://ftp.ruby-lang.org/pub/ruby/ruby-2.1.5.tar.gz | tar xz
![](https://box.kancloud.cn/ece0602a72c93117a1a0a019bc616d93_760x99.png)
cd ruby-2.1.5
./configure --disable-install-rdoc
make && make install
ln -s /usr/local/bin/ruby /usr/bin/ruby
发现报错
![](https://box.kancloud.cn/eea89fb46518eba75816efc78773027c_601x116.png)
发现单词写错了 第一个字母 l 不是大写的i
ln -s /usr/local/bin/ruby /usr/bin/ruby
ln -s /usr/local/bin/gem /usr/bin/gem
ln -s /usr/local/bin/bundle /usr/bin/bundle
// 设置ruby gem源为淘宝
gem source -r https://rubygems.org/
gem source -a http://ruby.taobao.org/
报错
![](https://box.kancloud.cn/98d1ddc7c24f0571b50b575edae5229f_610x39.png)
解决办法
gem source -a https://ruby.taobao.org/
我们已经停止基于 HTTP 协议的镜像服务, 请在配置中使用 HTTPS* 协议代替
gem install bundler --no-ri --no-rdoc
安装MySQL及初始化GitLab库
我已经安装完myql 所以直接 初始化gitlab库
// 登录mysql创建gitab的帐号和数据库
mysql> CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'gitlab';
mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';
//测试是否可以用git帐号登录数据库
sudo -u git -H mysql -u gitlab -p -D gitlabhq_production
安装Redis
yum -y install redis
报这种错误
![](https://box.kancloud.cn/ca9bb2f09e2292908cd0b552d5f0bea9_537x245.png)
解决办法
redis包含在第三方的yum源里面,不在centos官方yum源中。
1:去下面的网站下载EPEL对应的版本:(epel是fedora维护的yum源,里面软件众多)
http://fedoraproject.org/wiki/EPEL
https://dl.fedoraproject.org/pub/epel/6/x86_64/
2:我下载的是这个:
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
3:安装epel:
rpm -ivh epel-release-6-8.noarch.rpm
4:安装Redis:
yum install redis
/etc/init.d/redis start
chkconfig redis on
添加git帐号并允许sudo
useradd --comment 'GitLab' git
echo "git ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
安装GitLab
cd /home/git
#下载源码
sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-ce.git -b 7-4-stable gitlab
修改配置
cd gitLab/
sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml
sudo -u git -H vim config/gitlab.yml
报错
![](https://box.kancloud.cn/372b06aad1de30a0c40277a300d24872_630x62.png)
解决办法
rpm -qa |grep vim
输入 rpm -qa|grep vim 命令, 如果 vim 已经正确安装,会返回下面的三行代码:
[root@centos]# rpm -qa |grep vim
vim-minimal-7.0.109-6.el5
vim-common-7.0.109-7.2.el5
vim-enhanced-7.0.109-7.2.el5
如果少了其中的某一条,比如 vim-enhanced 的,就用命令 yum -y install vim-enhanced 来安装:
yum -y install vim-enhanced
如果上面的三条都沒有返回, 可以直接用 yum -y install vim* 命令
yum -y install vim*
![](https://box.kancloud.cn/bcb7f6f14d027bedf03d92eafa6707bd_355x114.png)
编辑git路径, gitlab的host:port
vim config/gitlab.yml
host:192.168.20.9
port: 80
https: false
signup_enabled:ture
修改目录权限
chown -R git log/
chown -R git tmp/
chmod -R u+rwX log/
chmod -R u+rwX tmp/
chmod -R u+rwX tmp/pids/
chmod -R u+rwX tmp/sockets/
chmod -R u+rwX public/uploads
创建目录
sudo -u git -H mkdir /home/git/gitlab-satellites
chmod u+rwx,g=rx,o-rwx /home/git/gitlab-satellites
编辑配置文件unicorn.rb
sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
#查看系统核心数
nproc
4
#编辑配置
sudo -u git -H vim config/unicorn.rb
worker_processes 4
拷贝配置文件rack_attack.rb
sudo -u git -H cp config/initializers/rack_attack.rb.example config/initializers/rack_attack.rb
定义全局的用户和邮箱
sudo -u git -H git config --global user.name "GitLab"
sudo -u git -H git config --global user.email "example@example.com"
sudo -u git -H git config --global core.autocrlf input
配置数据库连接信息
sudo -u git cp config/database.yml.mysql config/database.yml
sudo -u git -H vim config/database.yml
vim config/database.yml
production:
username: gitlab
password: "gitlab"
![](https://box.kancloud.cn/5cb37ef394fe87bc83a262f8736e54dd_315x266.png)
#安装gems
cd cd /home/git/gitlab
$ gem install charlock_holmes --version '0.6.9.4'
vi Gemfile
source "https://rubygems.org"改为source "http://rubygems.org"或改成 source "https://ruby.taobao.org/"
#安装
bundle install --deployment --without development test postgres puma aws
![](https://box.kancloud.cn/4226463f9638421c60369ddaeaf64c78_316x34.png)
决绝办法
whereis bundle
发现在
![](https://box.kancloud.cn/76317d65c1b0e2d4c8a03cba157a1801_485x90.png)
编辑 vi etc/profile
在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下面添加一行
export PATH=$PATH:/usr/local/bin
发现 还不可以
执行 gem install bundler
bundle install --deployment --without development test postgres puma aws
报错信息
![](https://box.kancloud.cn/284810928cdc70dc2429f4d9aaa29d83_815x180.png)
修改命令如下
sudo -u git -H bundle install --deployment --without development test postgres puma aws
![](https://box.kancloud.cn/98f6902351ca6d53d3c4850643682139_753x346.png)
运行
sudo -u git -H bundle install --no-deplyment
sudo -u git -H bundle install --deployment --without development test postgres puma aws
![](https://box.kancloud.cn/3df765c3e0b44d3e39069cc60cf475b9_778x97.png)
![](https://box.kancloud.cn/3af6ca064d820e2f09584b6259a6b449_754x516.png)
![](https://box.kancloud.cn/eba7ac066023e2bebeedd14bc9c80939_764x119.png)
如果没有cache就创建一个
chmod -R 777 /home/git/gitlab/vendor/bundle/ruby/2.1.0/cache
gem install rake -v '10.3.2'
出现
An error occurred while installing ansi (1.4.3), and Bundler cannot continue.
Make sure that gem install ansi -v '1.4.3' succeeds before bundling.
这是墙啊. 把Gemfile里面最上面的source改成https://ruby.taobao.org就行了.
![](https://box.kancloud.cn/18db94f540b4548e5daac9a9c91b200e_835x336.png)
安装GitLab-Shell
cd /home/git
git clone https://gitlab.com/gitlab-org/gitlab-shell.git -b v2.1.0 #指定最新标准版 v2.1.0
cd gitlab-shell/
cp config.yml.example config.yml
vi config.yml
#配置gitlab域名
gitlab_url: "http://git.test.com/"
#如果gitlab是使用https访问
self_signed_cert:true
#安装
./bin/install
注释掉 #CREATE USER 'gitlab'@'localhost' IDENTIFIED BY '123456';