// 查看當前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

curl --progress ftp://ftp.ruby-lang.org/pub/ruby/ruby-2.1.5.tar.gz | tar xz

cd ruby-2.1.5
./configure --disable-install-rdoc
make && make install
ln -s /usr/local/bin/ruby /usr/bin/ruby
發現報錯

發現單詞寫錯了 第一個字母 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/
報錯

解決辦法
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
報這種錯誤

解決辦法
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
報錯

解決辦法
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*

編輯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"

#安裝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

決絕辦法
whereis bundle
發現在

編輯 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
報錯信息

修改命令如下
sudo -u git -H bundle install --deployment --without development test postgres puma aws

運行
sudo -u git -H bundle install --no-deplyment
sudo -u git -H bundle install --deployment --without development test postgres puma aws



如果沒有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就行了.

安裝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';