您好,登錄后才能下訂單哦!
一、簡介
git
git 是一種開源的版本控制系統,可以高效的管理項目版本。同時也是一個版本控制軟件。
GitHub
GitHub 是一個面向開源及私有軟件項目的托管平臺。GitHub可以托管各種Git庫,并提供web界面。
GitLab
GitLab 是一個用于倉庫管理系統的開源項目,使用git進行代碼管理工具,可以自己搭建GitLab倉庫服務器。
GitLab:是一個基于Git實現的在線代碼倉庫托管軟件,你可以用gitlab自己搭建一個類似于Github一樣的系統,一般用于在企業、學校等內部網絡搭建git私服。
功能:Gitlab 是一個提供代碼托管、提交審核和問題跟蹤的代碼管理平臺。對于軟件工程質量管理非常重要。
版本:GitLab 分為社區版(CE) 和企業版(EE)。
配置:建議CPU2核,內存2G以上。
優點:
1.git是分布式的,svn不是
git分布式本地就可以用,可以隨便保存各種歷史痕跡,不用擔心污染服務器,連不上服務器也能提交代碼、查看log。
2.GIT分支和SVN的分支不同
分支在SVN中實際上是版本庫中的一份copy,而git一個倉庫是一個快照,所以git 切換、合并分支等操作更快速。
3.git有一個強大的代碼倉庫管理系統 - gitlab
可以很方便的管理權限、代碼review,創建、管理project
倉庫數據位置:ls /var/opt/gitlab/git-data/repositories/
二、參數及操作
1.下載官方yum源,yum install gitlab 清華大學鏡像源:
https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce
安裝依賴項
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
啟動postfix,并設置為開機啟動?
systemctl start postfix
systemctl enable postfix
設置防火墻?(可忽略)
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
Gitlab-ctl reconfigure 重載
Gitlab-ctl restart 重啟
查看版本 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 11.3.6
2.更改默認端口
使用gitlab內置的nginx,修改nginx默認端口,從80變為82。
由于這時候進行了上述的配置,因此,修改下列文件會改變默認值。同時,如果重新運行gitlab-ctl reconfigure,修改并不會被覆蓋。
更改默認監聽8080為8082
gitlab_workhorse['auth_backend'] = "http://localhost:8082"
unicorn['port'] = 8082#原值unicorn['port'] = 8080
vi /var/opt/gitlab/nginx/conf/gitlab-http.conf 這里要和上述一直哦
listen :82; #默認值listen :80;
4.使用gitlab內置nginx,把修改unicorn的默認端口從8080改為8082。即nginx監聽的rails端口,類似php-fpm
vi /var/opt/gitlab/gitlab-rails/etc/unicorn.rb
listen "127.0.0.1:8082", :tcp_nopush => true
#原值listen "127.0.0.1:8080", :tcp_nopush => true
Gitlab-ctl restart
30秒后訪問 否則502或404
5.漢化:
1.查看gitlab版本cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
2.下載對應漢化包https://gitlab.com/xhang/gitlab
3.解壓并進入漢化包目錄查看版本 cat gitlab-11-1-stable-zh/VERSION
4.先備份防止漢化失敗及時修復cp -r /opt/gitlab/embedded/service/gitlab-rails/ /home/test/bak
5.查看別名 alias 注意alias cp=cp -i
6.vim ~/.bashrc注銷掉cp -i(完事之后改回來)
7.\cp -rf gitlab-11-2-stable-zh/ /opt/gitlab/embedded/service/gitlab-rails/
7.重載重啟 gitlab-ctl reconfigure gitlab-ctl restart
6.備份設置
#每天備份,7天后刪除7天以前的備份
###gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
#604800秒 7天后刪除之前的
gitlab_rails['backup_keep_time'] = 604800
7.命令解釋
502錯誤 404
1.思路
一般如果是剛重啟完服務那就等1分鐘,一定要看nginx 日志還有gitlab狀態(gitlab-ctl status),查看/etc/gitlab配置文件 的端口占用情況
2.解決
gitlab-ctl restart sidekiq?
gitlab-ctl hup unicorn?
3.clone時提示warning: templates not found /usr/share/git-core/templates
創建這個目錄即可
4.git clone shh...時提示輸入git密碼
檢查公鑰文件和authorized_keys是否和公鑰一致
然后再嘗試添加ssh-add ~/.ssh/45id_rsa
5.ssh_exchange_identification: read: Connection reset by peer
fatal: Could not read from remote repository.
注意/etc/hosts.deny這個文件是不是自己的IP在里面被拒絕了!
如果在Git克隆上,系統會提示您輸入密碼,例如git@gitlab.com's password:
SSH設置有問題。mie
確保您正確生成了SSH密鑰對,并將公共SSH密鑰添加到了GitLab配置文件
嘗試使用ssh-agent本文檔前面所述的方法手動注冊您的私有SSH密鑰
嘗試通過運行來調試連接ssh -Tv git@example.com
(替換example.com為您的GitLab域)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。