20190419 Gitlab部分

準備環境:172.18.9.200是gitlab、172.18.9.201是jenkins
Git是gitlab的客戶端命令,gitlab是應用程序
html

1、使用清華大學的鏡像:

rpm包國內下載地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/
20190419    Gitlab部分nginx

2、[root@centos7 src]#yum install -y gitlab-ce-11.9.8-ce.0.el7.x86_64.rpm

(注:我在此處停留好久,由於我yum時老是報錯「Nothing to do」,只要咱們mount上光盤,配好epel源aliyun的鏡像便可yum了,由於此時源碼包已上傳至虛擬機,這時下載源碼包已經和yum源不要緊了)git

3、[root@centos7 src]#vim /etc/ssh/sshd_config

port=2022 #默認爲22,必改web

4、[root@centos7 src]#vim /etc/gitlab/gitlab.rb

external_url 'http://172.18.9.150' 此項改成IP,是爲了讓開發人員能連上咱們。
###Email Settings
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "rooroot@163.com"
gitlab_rails['smtp_password'] = "zhang@123"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['gitlab_email_from'] = "rooroot@163.com"
user["git_user_email"] = rooroot@"163.com" 該處的「」必須加上,sql

5、一條命令查看gitlab的相關插件:

[root@200 ~]#gitlab-
gitlab-ctl gitlab-psql gitlab-rails gitlab-rake vim

6、從新編譯:[root@200 ~]#gitlab-ctl reconfigure
7、查看狀態:[root@200 src]#gitlab-ctl status

run: alertmanager: (pid 30017) 149s; run: log: (pid 29629) 188s
run: gitaly: (pid 29893) 154s; run: log: (pid 28314) 338s
run: gitlab-monitor: (pid 29950) 153s; run: log: (pid 29390) 212s
run: gitlab-workhorse: (pid 29911) 154s; run: log: (pid 29077) 243s
run: logrotate: (pid 29207) 233s; run: log: (pid 29228) 230s
run: nginx: (pid 29144) 239s; run: log: (pid 29167) 236scentos

8、訪問測試:

20190419    Gitlab部分

9、

20190419    Gitlab部分

10、點擊USE1 new user後,操做以下:
11、務必時間同步,重啓gitlab後就能夠繼續操做了,時間不一樣步結果就失敗:

[root@200 src]#ntpdate 172.18.0.1
23 Apr 11:41:27 ntpdate[32929]: adjust time server 172.18.0.1 offset -0.188343 sec
[root@200 src]#gitlab-ctl restart
ok: run: alertmanager: (pid 32972) 0s
ok: run: gitaly: (pid 32987) 0s
ok: run: nginx: (pid 33037) 1s服務器

12、建立組:

20190419    Gitlab部分
20190419    Gitlab部分

十3、建立項目:

20190419    Gitlab部分
20190419    Gitlab部分
20190419    Gitlab部分

十4、建立新文件:點擊提交,第一個版本就被放在倉庫裏了:

20190419    Gitlab部分

十5、在201主機安裝git: [root@201 ~]#yum install -y git
十6、咱們在201主機克隆git:

[root@201 ~]#git clone http://172.18.9.150/web35/web1.git
Cloning into 'web1'...
Username for 'http://172.18.9.150': Leslie #這是name
Password for 'http://Leslie@172.18.9.150':
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
[root@201 ~]#ll
total 12
drwxr-xr-x. 3 root root 36 Apr 23 12:23 web1
[root@201 ~]#cd web1/
[root@201 web1]#ll
total 4
-rw-r--r--. 1 root root 23 Apr 23 12:23 index.html
[root@201 web1]#vim index.html
馬哥教育Linux 35 v1dom

十7、新建一個測試頁:

20190419    Gitlab部分

十8、執行Git config --global:

[root@201 ~]#git config --global user.name "user1"
[root@201 ~]#git config --global user.email "test.@qq.com"
[root@201 ~]#cd web1/
[root@201 web1]#vim index.html
馬哥教育 Linux 35 v1
馬哥教育 Linux 35 v2
[root@201 web1]#git add ./*
[root@201 web1]#git commit -m "v2"
[master ca130ab] v2
1 file changed, 2 insertions(+), 1 deletion(-)
[root@201 web1]#git push
warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:ssh

git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

git config --global push.default simple

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

Username for 'http://172.18.9.150': Leslie
Password for 'http://Leslie@172.18.9.150':
Counting objects: 5, done.
Writing objects: 100% (3/3), 258 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To http://172.18.9.150/web35/web1.git
3af0975..ca130ab master -> master #默認是master

十9、找到web2,這是第一臺服務器就能夠進行git push拉取了。

20190419    Gitlab部分

二10、查看分支:[root@201 web1]#git branch
  • master
    二11、添加一個分支,這時,咱們再去git checkout branch時要加「-b」參數:

    20190419    Gitlab部分

    二12、[root@201 web1]#git checkout -b develop

    Switched to a new branch 'develop'
    [root@201 web1]#git branch

  • develop
    master
    {插播:如何尋找develop分支的clone}:
    步驟:Groups,web35,web1,點擊「+」,建立新branch,再返回web1點擊「clone」,便可!!

    二十3、咱們克隆一個分支:develop

    [root@200 src]#git clone -b develop http://172.18.9.150/web35/web1.git
    Cloning into 'web1'...
    Username for 'http://172.18.9.150': Leslie
    Password for 'http://Leslie@172.18.9.150':
    remote: Enumerating objects: 6, done.
    remote: Counting objects: 100% (6/6), done.
    remote: Compressing objects: 100% (2/2), done.
    remote: Total 6 (delta 0), reused 0 (delta 0)
    Unpacking objects: 100% (6/6), done.

    二十4、[root@200 web1]#vim web1/index.html

    馬哥教育Linux 35 v1
    馬哥教育Linux 35 v2
    馬哥教育Linux 35 v3 #這些內容只有通過測試纔會被髮布到線上

    二十5、[root@200 web1]#git commit -m "v3"

    [develop 89e511c] v3
    1 file changed, 2 insertions(+)
    [root@200 web1]#git push
    warning: push.default is unset; its implicit value is changing in
    Git 2.0 from 'matching' to 'simple'. To squelch this message
    and maintain the current behavior after the default changes, use:

    git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

git config --global push.default simple

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

Username for 'http://172.18.9.150': Leslie
Password for 'http://Leslie@172.18.9.150':
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 266 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote:
remote: To create a merge request for develop, visit:
remote: http://172.18.9.150/web35/web1/merge_requests/new?merge_request%5Bsource_branch%5D=develop
remote:
To http://172.18.9.150/web35/web1.git
ca130ab..89e511c develop -> develop

二十6、Gitlab 回滾:

20190419    Gitlab部分
回滾到v1:
20190419    Gitlab部分

二十七:git 經常使用命令:

git config --globaluser.name 「name「 #設置全局用戶名git config --globaluser.email xxx@xx.com#設置全局郵箱git config --global –list #列出用戶全局設置git add index.html / . #添加指定文件、目錄或當前目錄下全部數據到暫存區git commit -m「11「 #提交文件到工做區gitstatus #查看工做區的狀態git push #提交代碼到服務器git pull #獲取代碼到本地gitlog #查看操做日誌vim . gitignore #定義忽略文件基於倉庫的回滾:git reset --hard HEAD^^ #git 版本回滾, HEAD 爲當前版本,加一個^爲上一個,^^爲上上一個版本gitreflog # #獲取每次提交的 ID,能夠使用--hard 根據提交的 ID 進行版本回退gitreset --hard 5ae4b06 #回退到指定 id 的版本#git branch #查看當前所處的分支#git checkout -b develop #建立並切換到一個新分支#git checkout develop #切換分支

相關文章
相關標籤/搜索