Gitlab的安裝及基本使用(一)

(一)、簡介
git的有點
一、git是分佈式的,svn不是
git分佈式本地就能夠用,能夠隨便保存各類歷史痕跡,不用擔憂污染服務器,連不上服務器也能提交代碼、查看log。
二、GIT分支和SVN的分支不一樣
分支在SVN中其實是版本庫中的一份copy,而git一個倉庫是一個快照,因此git 切換、合併分支等操做更快速。
三、git有一個強大的代碼倉庫管理系統 - gitlab
能夠很方便的管理權限、代碼review,建立、管理projectlinux

GitLab 是一個用於倉庫管理系統的開源項目,使用Git做爲代碼管理工具,並在此基礎上搭建起來的web服務。可經過Web界面進行訪問公開的或者私人項目。它擁有與Github相似的功能,可以瀏覽源代碼,管理缺陷和註釋。能夠管理團隊對倉庫的訪問,它很是易於瀏覽提交過的版本並提供一個文件歷史庫。團隊成員能夠利用內置的簡單聊天程序(Wall)進行交流。它還提供一個代碼片斷收集功能能夠輕鬆實現代碼複用。
版本:GitLab 分爲社區版(CE) 和企業版(EE)nginx

(二)、安裝
方法一:經過yum源進行安裝
一、配置yum源git

[root@otrs004097 ~]# cat /etc/yum.repos.d/gitlab-ce.repo 
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

二、更新本地yum緩存
sudo yum makecacheweb

三、安裝GitLab社區版
sudo yum install gitlab-ce #自動安裝最新版
sudo yum install gitlab-ce-x.x.x #安裝指定版本shell

四、GitLab經常使用命令vim

sudo gitlab-ctl start # 啓動全部 gitlab 組件;
sudo gitlab-ctl stop # 中止全部 gitlab 組件;
sudo gitlab-ctl restart # 重啓全部 gitlab 組件;
sudo gitlab-ctl status # 查看服務狀態;
sudo gitlab-ctl reconfigure # 啓動服務;
sudo vim /etc/gitlab/gitlab.rb # 修改默認的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 檢查gitlab;
sudo gitlab-ctl tail # 查看日誌;

方法二:經過rpm包安裝
gitlab經過下載rpm包集成了它所須要的軟件,簡化安裝步驟,rpm包能夠從官網上或清華鏡像源獲取https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/. 下載最新的版本:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm瀏覽器

[root@otrs004097 opt]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm
[root@otrs004097 opt]# rpm -ivh gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm
或者
[root@otrs004097 opt]#yum localinstall -y gitlab-ce-12.4.2-ce.0.el7.x86_64.rpm緩存

(三)、修改配置文件。
[root@otrs004097 ~]# vim /etc/gitlab/gitlab.rb
external_url 'http://192.168.4.97'服務器

[root@otrs004097 ~]# gitlab-ctl reconfigure #####從新加載配置
注意要保留8080端口不然會報錯的。能夠修改下邊的配置文件 vim /var/opt/gitlab/gitlab-rails/etc/unicorn.rb
listen "127.0.0.1:8080", :tcp_nopush => true
重置成功後就能夠登陸網頁 了。dom

備註:gitlab的守護進程是會默認開啓nginx的,若是想要關閉,能夠嘗試一下操做
gitlab-ctl stop nginx
gitlab-ctl restart nginx
若是想要釋放資源,關閉gitlab時,能夠嘗試一下操做
gitlab-ctl stop

(四)、gitlab的使用
一、登陸gitlab,在瀏覽器裏輸入相關的信息
Gitlab的安裝及基本使用(一)
二、默認的帳號爲:root,密碼是剛纔重置的。
Gitlab的安裝及基本使用(一)
三、安裝Git工具linux:安裝Git,使用自帶的源安裝。
[root@otrs004097 opt]# yum install git -y
四、生成密鑰文件,使用ssh-keygen生成密鑰文件.ssh/id_rsa.pub.

[root@otrs004097 opt]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:at+BXYp8LPxfZ6U00BssEFb1LhvnyphuhFpOyRYYBMo root@otrs004097
The key's randomart image is:
+---[RSA 2048]----+
|      .o. +o...  |
|   . .  .. . o . |
|    E    o  o + .|
|        . .  o + |
|        S. +. * +|
|       + =Bo.. O.|
|      o ***.  + +|
|     . ..=...= + |
|        . o+= o  |
+----[SHA256]-----+

五、在gitlab主頁中新建一個project。
Gitlab的安裝及基本使用(一)
六、客戶端生成密鑰文件
[root@DEV004021 ~]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDjYPFEWZ/TqT750fQnsoYgzVtjp9NyT3dVPF8BnUJ8coDQLixoYFevXeWbOhECoYI5ekY/6PgLjy3yVJ8uX3BitluHybttO3QhtvmNVRhHTilSyX2c6fxDMIouD08Xnda1w3I9mD8SD+Xg/OCy/8V+QWpfvC1D+oU6Hkt9UyEKgxZ5hnInnc4dWJgpuGsHKa2Hqrr3VImPaSeJ1xVuYl8jsxQjSa1+zIzDbfM0NLCfT/1FGPLCJ4kjOKTFIv3AHn3y9hwTs1H1RrE5bv5H4fNpjG1GsOGKw9MxSP2mV9RHhOI4ItiMK0NNNrZVVa+Lgs50/8s9cn3tWzaHiXNWPEWR root@DEV004021

將公鑰複製到gitlab中
Gitlab的安裝及基本使用(一)
查看ssh key添加完成
Gitlab的安裝及基本使用(一)
七、點擊項目,查看ssh地址和http地址
Gitlab的安裝及基本使用(一)

(五)、客戶端下載和上傳文件,都在客戶端操做
一、進入到相應的目錄,下載代碼

[root@DEV004019 data]# mkdir /opt/gitlab
[root@DEV004019 data]# cd /opt/gitlab/
[root@DEV004019 gitlab]# git clone http://192.168.4.97/root/jeeson.git
Cloning into 'jeeson'...
Username for 'http://192.168.4.97': root
Password for 'http://root@192.168.4.97': 
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
[root@DEV004019 gitlab]# ll
total 0
drwxr-xr-x 4 root root 64 Nov 20 16:48 jeeson

二、編輯相應的腳本文件

[root@DEV004019 jeeson]# vim testlqb.sh

echo "this is test shell "

三、將新增的文件加入到索引中
[root@DEV004019 jeeson]# git add testlqb.sh
四、將該文件提交到本地倉庫中

[root@DEV004019 jeeson]# git commit -m "this is test shell"
[master 380ea1d] this is test shell
 1 file changed, 1 insertion(+)
 create mode 100644 testlqb.sh

五、將文件同步到gitlab服務器上

[root@DEV004019 jeeson]# git push -u origin master
Username for 'http://192.168.4.97': root
Password for 'http://root@192.168.4.97': 
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 286 bytes | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To http://192.168.4.97/root/jeeson.git
   c47a84c..380ea1d  master -> master
Branch master set up to track remote branch master from origin.

六、在gitlab服務器的網頁查看
Gitlab的安裝及基本使用(一)

相關文章
相關標籤/搜索