gitlab系列詳解

[2018-09-13 09:32:49](javascript:;)

虛擬機的安裝
1.安裝virtualbox
https://www.virtualbox.org/
2.安裝centos6.6
3.配置網(wǎng)絡
右鍵-->網(wǎng)絡-->網(wǎng)卡2-->host-only

cd /etc/sysconfig/network-scripts/
vi ifcfg-eth0
將此處改為yes ONBOOT=yes
此時可ping外網(wǎng)

cp ifcfg-eth0 ifcfg-eth1
加入以下內容
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.56.101
NETMASK=255.255.255.0

4.使用工具連接centos
https://winscp.net/eng/download.php
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

gitlab的簡介
1.gitlab是什么
是一個用于倉庫管理系統(tǒng)的開源項目,使用Git作為代碼管理工具,并在此基礎上搭建起來的web服務。
基礎功能免費,高級功能收費
2.為什么要使用gitlab
1.基礎功能開源,可自行搭建
2.可以進行權限控制,使得代碼對部分人可見
3.gitlab使用方便,非常適合企業(yè)內部使用

gitlab的安裝

1.linux必要配置
    在防火墻里開放http跟ssh端口
        yum install lokkit
        yum install curl openssh-server openssh-clients postfix cronie -y
        service postfix start
        chkconfig postfix on
        lokkit -s http -s ssh
    添加gitlab倉庫,并安裝
        curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
        sudo yum install gitlab-ce
    啟動gitlab
        gitlab-ctl reconfigure
        vim /etc/gitlab/gitlab.rb 
        修改external_url為gitlab機子的ip+要使用的端口 如:http://192.168.56.101:8888
        修改nginx['listen_port'] = 8888
        重新配置gitlab并重啟       
        gitlab-ctl reconfigure
        gitlab-ctl restart
    配置防火墻
        vim /etc/sysconfig/iptables
        -A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT
        service iptables restart

配置gitlab郵件服務
配置郵箱服務的用途
有合并請求時,郵件通知
賬號注冊時,郵件驗證
修改密碼時,通過郵件修改
配置步驟:
1.開啟QQ郵箱的smtp服務(不建議使用163郵箱,發(fā)幾次之后,就不能發(fā)送)
設置--》賬戶--》smtp--》密保驗證--》驗證成功返回一串字符串,形狀如(ausdixersybgcgid)
保存返回的字符串
2.修改gitlab配置

        vim /etc/gitlab/gitlab.rb
        按/后輸入smtp_enable,找到下面這一串文本,進行修改
        gitlab_rails['smtp_enable'] = true
        gitlab_rails['smtp_address'] = "smtp.qq.com"
        gitlab_rails['smtp_port'] = 465
        gitlab_rails['smtp_user_name'] = "1403780990@qq.com"
        gitlab_rails['smtp_password'] = "開通smtp時返回的字符"
        gitlab_rails['smtp_domain'] = "qq.com"
        gitlab_rails['smtp_authentication'] = "login"
        gitlab_rails['smtp_enable_starttls_auto'] = true
        gitlab_rails['smtp_tls'] = true

        user['git_user_email'] = "1403780990@qq.com"
        gitlab_rails['gitlab_email_from'] = '1403780990@qq.com'
        按esc退出到命令行模式
        之后:wq 保存并退出

        gitlab-ctl reconfigure
    3.測試郵件服務是否正常
        gitlab-rails console
        Notify.test_email('接收方郵件地址','郵件標題','郵件內容').deliver_now
        按回車,測試發(fā)送。

gitlab的賬號注冊及分組

1.開啟注冊郵箱驗證
admin area --》setting--》Sign-up restrictions--》勾選Send confirmation email on sign-up
2.當前用戶
root、123、wiggin
3.創(chuàng)建組
首頁->create a group(http://192.168.56.101:8888/dashboard/groups)
訪問級別
Private:只有組成員才能看到
Internal:只要登錄的用戶就能看到
Public:所有人都能看到

Guest:可以創(chuàng)建issue、發(fā)表評論,不能讀寫版本庫
Reporter:可以克隆代碼,不能提交
Developer:可以克隆代碼、開發(fā)、提交、push
Master:可以創(chuàng)建項目、添加tag、保護分支、添加項目成員、編輯項目
Owner:可以設置項目訪問權限 - Visibility Level、刪除項目、遷移項目、管理組成員

  1. 鍵入命令:ssh-keygen -t rsa
  2. 提醒你輸入key的名稱,輸入如id_rsa
  3. 在C:\Users\用戶.ssh下產(chǎn)生兩個文件:id_rsa和id_rsa.pub
  4. 用記事本打開id_rsa.pub文件,復制內容,在gitlab.com的網(wǎng)站上到ssh密鑰管理頁面,添加新公鑰,隨便取個名字,內容粘貼剛才復制的內容。

gitlab分支及標簽的保護

為什么要保護分支
保護特定的分支不被隨便合并,以免影響相應的分支
進入項目--> repository-->branches-->project setting
注意 能push 就能merge ,相應的權限把握好(master分支設置只能masters可以合并)

更多學習資料可查看
https://xdclass.net/html/sort.html

如需針對此內容進行深入了解可查看
Jenkins持續(xù)集成視頻教程Git

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容