歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Gitlab在Ubuntu-12.04.2中的安裝和配置

Gitlab在Ubuntu-12.04.2中的安裝和配置

日期:2017/3/3 16:13:56   编辑:關於Linux

公司之前用的是SVN進行項目管理,由於SVN的代碼庫是集中管理的,不支持離線更新,後來把SVN遷移到git上面,git采用的是分布式的體系機構,用戶完全可以脫離git服務器而在本地查看,編寫和提交代碼。後來由於git沒有web頁面,所有的操作都是在後台操作,相比之下,gitlab更是一款高端洋氣上檔次的git項目管理軟件,用戶可以通過WEB頁面添加,刪除項目|用戶|SSHKEY等等,而且可以通過浏覽器查看,修改源代碼。
Gitlab簡介:Gitlab是一個用Ruby on Rails開發的開源項目管理程序,可以通過WEB界面進行訪問公開的或者私人項目。它和Github有類似的功能,能夠浏覽源代碼,管理缺陷和注釋。gitlab官方文檔支持Debian/Ubuntu系統,我的gitlab服務器是ubuntu-12.04.2,具體的安裝請查看gitlab官方安裝文檔。

1)在mysql上面創建gitlabhq_production數據庫並授權。

#創建gitlabhq_production數據庫並授權
CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE
`utf8_unicode_ci`;
GRANT SELECT, LOCK TABLES, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON
`gitlabhq_production`.* TO 'gitlab'@'192.168.1.230' identified by 'gitlab!@#';
#修改gitlab數據庫配置文件
cd gitlab
sudo -u git cp config/database.yml.mysql config/database.yml
sudo cat config/database.yml
production:
  adapter: mysql2
  encoding: utf8
  reconnect: false
  database: gitlabhq_production
  pool: 10
  username: gitlab
  password: "gitlab!@#"
  host: 192.168.1.243
#初始化gitlab數據庫
sudo -u git -H chmod o-rwx config/database.yml
sudo -u git -H bundle exec rake gitlab:setup RAILS_ENV=production

2)gitlab默認安裝後的用戶名:[email protected],密碼:5iveL!fe,用戶第一次登陸後需要修改密碼。

3)gitlab郵件提醒配置,創建賬號,添加SSH KEY的時候都會有郵件提醒給用戶。

修改全局配置文件git/.gitconfig文件,這裡的email是gitlab發送郵件的Email地址。

配置gitlab的發送郵件的SMTP服務,gitlab/config/environments/production.rb。

當管理員給用戶創建賬號時,用戶郵箱裡面會自動收到gitlab發送的郵件。

4)gitlab URL配置。

#復制gitlab的配置文件
sudo cp gitlab/lib/support/nginx/gitlab /etc/nginx/sites-available/gitlab
sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab
#編輯配置文件/etc/nginx/sites-enabled/gitlab
server {
  listen *:80 default_server;
  server_name 主機名;

5)修改git repositories存儲路徑,默認保存在/home/git/repositories路徑下面。

cat gitlab-shell/config.yml
# Repositories path
# REPOS_PATH MUST NOT BE A SYMLINK!!!
repos_path: "/data/gitlab/repositories"

6)用戶登錄成功後,在Profile裡面設置賬號,修改密碼,設置郵件提醒(Notifications),添加SSH Kyes,設置用戶浏覽時的效果(Design)等。

 

7)創建git項目,相當於git裡面的git init --bare命令。項目類型為Public,即任何人都可以查看。

8)項目創建完畢後,可以通過下面的方法設置,創建和提交代碼到項目庫。

9)通過soucetree把git裡面的代碼push到gitlab裡面,首先在sourcetree Settings添加gitlab remote origin地址。

10)通過Sourcetree把項目push到遠端的gitlab remote origin 。

11)gitlabWEB頁面測試,由於sfzhang.git是public,用戶不用登陸就可以浏覽。

總結:

1)gitlab搭建完畢後,用git clone 的時候出現下面錯誤(This error occurs when sending data over HTTP which is larger than Git’s post buffer (by default 1 MB),在nginx配置文件http下面添加client_max_body_size 500m;即可。

POST git-receive-pack (chunked)
error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly

本文出自 “樸實的追夢者” 博客,請務必保留此出處http://sfzhang88.blog.51cto.com/4995876/1323201

Copyright © Linux教程網 All Rights Reserved