gitlab服務器部署

一、介紹
GitLab 是一個用於倉庫管理系統的開源項目,使用Git作爲代碼管理工具,並在此基礎上搭建起來的web服務。
GitLab擁有與Github類似的功能,它非常易於瀏覽提交過的版本並提供一個文件歷史庫。
二、安裝
1.獲取安裝包
wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/ol/7/gitlab-ce-11.9.6-ce.0.el7.x86_64.rpm
2.安裝依賴包
yum install curl policycoreutils openssh-server openssh-clients postfix
3.安裝gitlab
yum localinstall gitlab-ce-11.9.6-ce.0.el7.x86_64.rpm
4.配置gitlab
vim /etc/gitlab/gitlab.rb










#gitlab綁定本地IP地址或域名
external_url 'http://10.0.0.101'
#gitlab數據目錄
git_data_dirs({ "default" => { "path" => "/data/gitlab-core" } })
#郵箱設置
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "123456"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '[email protected]'

5.啓動服務
#重載配置文件
gitlab-ctl reconfigure
#啓動gitlab
gitlab-ctl start
6.驗證郵件
gitlab-rails console
Notify.test_email('收件人郵箱', '郵件標題', '郵件正文').deliver_now
7.驗證
Web:訪問:10.0.0.101
用戶:root
密碼:rootpasswd
gitlab服務器部署
三、關閉自動註冊
#我們關閉自動註冊,因爲我們內部使用不需要用戶自己註冊,由運維分配用戶即可
gitlab服務器部署
四、添加key,做免密驗證
1.在客戶端創建密鑰
ssh-keygen -t rsa
2.複製公鑰
cat ~/.ssh/id_rsa.pub
3.在gitlab上添加公鑰
gitlab服務器部署
gitlab服務器部署
注:保存後就可以拉取代碼
五、備份與恢復
1.備份,默認路徑:/var/opt/gitlab/backups
gitlab-rake gitlab:backup:create
2.恢復
gitlab-rake gitlab:backup:restore BACKUP=1610557313_2021_01_14_11.9.6
六、常用命令
#創建git倉庫
git init
#拉取gitlab上的代碼
git clone git@linux-gitlab:web/web-demo.git
#身份認證
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
#把文件添加到倉庫,以便之後的提交
git add file.txt
#把文件提交到倉庫
git commit -m “readme”
#查看狀態
git status
#查看工作區和版本庫裏面最新版本的區別
git diff HEAD -- readme.txt
#把文件在工作區的修改全部撤銷
git checkout -- file
#把暫存區的修改撤銷掉,重新放回工作區
git reset HEAD <file>
#顯示從最近到最遠的提交日誌
git log
git log --pretty=oneline
#退回上一版本(HEAD表示當前版本,HEAD^表示上一版本,HEAD^^表示上上版本,往上100個可以寫成HEAD~100)
git reset --hard HEAD^
#回到退回前的版本(在退回前要備份所有版本ID,否則無法回到未來)
git reset --hard 1094a
#從版本庫中刪除該文件
git rm file
#關聯遠程庫
git remote add origin git@linux-gitlab:web/web-demo.git
#把本地庫的所有內容推送到遠程庫上
git push -u origin master
#從一個倉庫或者本地的分支拉取並且整合代碼
git pull
#創建dev分支並切換
git checkout -b dev

git branch dev
git checkout dev

git switch -c dev #表示創建並切換分支
git switch master #表示直接切換到已有的master分支
#查看當前分支
git branch
#合併dev分支到當前分支
git merge dev
#加上--no-ff參數就可以用普通模式合併,合併後的歷史有分支
git merge --no-ff -m "merge with no-ff" dev
#刪除指定分支
git branch -d dev
#把當前工作現場“儲藏”起來
git stash
#查看”儲藏“的工作現場
git stash list
#恢復”儲藏”的工作現場
git stash apply #恢復後,stash內容並不刪除,使用git stash drop刪除
git stash pop #恢復的同時把stash內容也刪了
#複製一個特定的提交到當前分支
git cherry-pick 54c805e2
#查看遠程庫的信息
git remote -v
#打一個新標籤
git tag v1.0
#查看所有標籤
git tag
#對指定提交打標籤
git tag v0.9 <commit id>
#查看指定標籤
git show v0.9
#可以指定標籤信息
git tag -a <tagname> -m "comment"
#刪除標籤
git tag -d v0.1
#推送某個標籤到遠程
git push origin v1.0
#次性推送全部尚未推送到遠程的本地標籤
git push origin --tags
#遠程刪除,先從本地刪除
git tag -d v0.9
git push origin :refs/tags/v0.9













































































































發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章