標籤(空格分隔): 運維繫列git
- 一:Gitlab概述
- 二:GitLab和GitHub的區別
- 三:搭建GitLab平臺與使用
GitLab概述: 是一個利用 Ruby on Rails 開發的開源應用程序,實現一個自託管的Git項目倉庫,可經過Web界面進行訪問公開的或者私人項目。 Ruby on Rails 是一個可使你開發、部署、維護 web 應用程序變得簡單的框架。 GitLab擁有與Github相似的功能,可以瀏覽源代碼,管理缺陷和註釋。能夠管理團隊對倉庫的訪問,它很是易於瀏覽提交過的版本並提供一個文件歷史庫。它還提供一個代碼片斷收集功能能夠輕鬆實現代碼複用,便於往後有須要的時候進行查找。 GitLab官網:https://about.gitlab.com/
相同點: 兩者都是基於web的Git倉庫,在很大程度上GitLab是仿照GitHub來作的,它們都提供了分享開源項目的平臺,爲開發團隊提供了存儲、分享、發佈和合做開發項目的中心化雲存儲的場所。 不一樣點: 一、GitHub若是要使用私有倉庫,是須要付費的。GitLab能夠在上面建立私人的免費倉庫。 二、GitLab讓開發團隊對他們的代碼倉庫擁有更多的控制,相比於GitHub,它有很多的特點:容許免費設置倉庫權限;容許用戶選擇分享一個project的部分代碼;容許用戶設置project的獲取權限,進一步的提高安全性;能夠設置獲取到團隊總體的改進進度;經過innersourcing讓不在權限範圍內的人訪問不到該資源。 從代碼私有性方面來看,有時公司並不但願員工獲取到所有的代碼,這個時候GitLab無疑是更好的選擇。但對於開源項目而言,GitHub依然是代碼託管的首選。 git相關概念: git 是一種版本控制系統,是一個命令,是一種工具 gitlib 是用於實現git功能的開發庫 github 是一個基於git實現的在線代碼託管倉庫,包含一個網站界面,向互聯網開放 gitlab 是一個基於git實現的在線代碼倉庫託管軟件,通常用於在企業內網搭建git私服 注:gitlab-ce 社區版 ;gitlab-ee是企業版,收費
系統:CentOS7.5X64 下載gitlab 最新版 https://packages.gitlab.com/gitlab/gitlab-ce/
yum install curl policycoreutils openssh-server openssh-clients postfix -y
默認,使用 Postfix 發送郵件 service postfix start chkconfig postfix on
iptables -F #清空規則 systemctl stop firewalld systemctl disable firewalld
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-11.0.3-ce.0.el7.x86_64.rpm/download.rpm rpm -ivh gitlab-ce-11.0.3-ce.0.el7.x86_64.rpm
gitlab-ctl reconfigure #從新配置應用程序。至關於初始化一下
gitlab-ctl status
netstat -nultp |grep :80
vim /etc/gitlab/gitlab.rb 改:13 external_url 'http://gitlab.example.com' 爲:13 external_url 'http://172.17.100.11'
gitlab的管理 關閉gitlab: # gitlab-ctl stop 啓動gitlab: # gitlab-ctl start 重啓gitlab: # gitlab-ctl restart
默認第一次啓動須要設置密碼的: 這裏配置密碼爲flyfish225 默認配置的是root用戶的密碼
mkdir -p /root/project cd project git clone http://172.17.100.11/TL-flyfish/solo.git 去公網下載一個博客的的項目 mkdir -p /soft/ cd /soft git clone https://github.com/b3log/solo.git cd /soft/solo/src/main/resouce/ vim late.latke.properties ---- serverhost = 172.17.100.11 ----
cd solo/ cp -ap * /root/project/solo/ cd /root/project/solo/ git add . git commit -m "all" git push origin master