Git丨在CentOS下搭建私有的git伺服器
在日常的專案開發中,我們可以傻瓜式的使用github進行程式碼託管,進而進行團隊的協同開發。但是很多時候我們開發的程式碼並不是開源的(特別是涉及到公司的業務上),這時候在伺服器上面部署git就可以很好地解決這個問題——既保證了團隊開發,又能閉源達到程式碼託管。本文將以CentOS為例子,記錄在CentOS下部署git伺服器的具體步驟
伺服器端:
第一步:配置git
1.1 從yum上安裝git
yum –y install git
1.2 檢視git版本:安裝完成後,在伺服器端輸入
git --version
就可以檢視當前版本號碼,如下圖所示我的git版本是1.8.3.1
1.3 建立使用者:在伺服器中建立一個git專屬使用者
//以下為CentOS下的使用者,賬戶密碼自定義
useradd git
passwd git
1.4 禁止該git使用者使用shell登入系統(為了安全性,一般都禁止)
vi /etc/passwd
按i進入編輯模式,在最後一行將git使用者修改成以下配置
git:x:1000:1000::/home/git:/usr/bin/git-shell
按ESC退出插入模式,輸入 “:wq” 儲存並且退出vi模式
第二步:配置遠端倉庫
2.1 建立一個空倉庫
我們選擇在路徑:cd /home/ 下先建立一個使用者目錄,在使用者目錄下建立一個git倉庫
cd /home
mkdir git
cd git
git init --bare LearnProject.git
到這裡,空倉庫已經建立成功 ,倉庫的路徑為:/home/git/LearnProject.git
2.2 為剛剛建立的使用者git賦予許可權
輸入以下命令,為git使用者賦予許可權
//chown -R 使用者名稱:組名 檔案
chown -R git:git LearnProject.git
第三步:開啟 RSA 認證
進入/etc/ssh目錄,編輯 sshd_config
cd /etc/ssh
vi ssh_config
按i進入插入模式,開啟以下三個配置的註釋(帶#為註釋), 按ESC退出插入模式,按:wq儲存
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
儲存完成後,重啟sshd服務
/etc/rc.d/init.d/sshd restart
如果執行上述命令出現以下錯誤:
可以嘗試以下命令:
service sshd restart
至此,伺服器端git配置完成;
客戶端
第一步:配置git
1.1 安裝git
在Linux上參考伺服器端安裝git,在Windows下教程很多,安裝也傻瓜式,這裡不再贅述
1.2 開啟git bash建立git使用者
git config --global user.name "Tanzj"
git config --global user.email "[email protected]"
1.3 建立與伺服器通訊的金鑰
在git bash中,輸入以下命令,為自己的郵箱建立一個金鑰
ssh-keygen -t rsa -C "[email protected]"
一路enter下去
這時候,系統已經為我們建立了一個公鑰和金鑰,id_rsa是金鑰,不能告訴任何人,id_rsa.pub是公鑰,可以公開;
1.4 將本地的公鑰新增到伺服器上
1.4.1 通過客戶端命令列將本地公鑰新增進遠端伺服器中
在gitbash下,輸入以下命令(ip地址換成你git伺服器的地址)
ssh [email protected] 'cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub
1.4.2 手動將公鑰新增到伺服器中
在1.3中,我們建立了一個公鑰,以Windows系統為例子,我們先找到這個檔案。這個檔案的路徑在:
C:\Users\Administrator\.ssh\id_rsa.pub
用記事本的方式開啟,我們會得到一串這樣的東西
將以上Ctrl+A全選然後複製。
在伺服器端,我們用vi編輯器訪問authorized_keys,將以上資訊貼上進其中
vi /home/git/.ssh/authorized_keys
然後:wq儲存。
通過以上1.4.1和1.4.2兩種方法,我們就將本地的公鑰新增進伺服器中了。如果發現該目錄下沒有.ssh檔案,我們可以手動建立一個,並新增一個authorized_keys
第二步:克隆遠端倉庫
將遠端空倉庫克隆到本地
2.1 建立本地資料夾
假設我們在D:/gitRepo/gitTest下建立一個用於本地的git倉庫資料夾
cd D:
mkdir gitRepo
cd gitRepo
mkdir gitTest
2.2 克隆遠端倉庫
//埠在22的情況下
git clone [email protected]:/home/git/LearnProject.git
//埠在非22的情況下(如5000)
git clone ssh://[email protected]:5000/home/git/LearnProject.git
這時候,bash會提示你克隆的倉庫是空的(的確是空的hhh)
至此,我們就完成了遠端倉庫的克隆。
第三步:push/pull專案
做完以上伺服器端/客戶端各兩步的內容,你的本地git已經可以和git伺服器進行通訊了,此時我們可以進行常規的專案push和pull了。
3.1 為倉庫新增內容
這裡我們隨便把自己的一個專案丟進去(或者隨意建立一個檔案亦可,空資料夾git不會識別)
3.2 提交修改
然後執行以下命令
git add .
git commit -m 初始化專案
這時候,我們就為本地建立了一次commit
3.3 push本地修改
執行以下命令
// origin 是遠端倉庫的別名,可以通過 git remote -v 檢視
//master 是預設主分支
git push origin master
見到以上內容,便說明push成功。
3.3 git伺服器遠端倉庫檢視commit
進入到伺服器遠端倉庫的目錄
cd /home/git/LearnProject.git
git log
看到我們的push已經生效。
至此,本文結束,如有錯誤,請不吝指教!
相關推薦
Git丨在CentOS下搭建私有的git伺服器
在日常的專案開發中,我們可以傻瓜式的使用github進行程式碼託管,進而進行團隊的協同開發。但是很多時候我們開發的程式碼並不是開源的(特別是涉及到公司的業務上),這時候在伺服器上面部署git就可以很好地解決這個問題——既保證了團隊開發,又能閉源達到程式碼託管。本文將以Cen
Centos伺服器ssh免密登入以及搭建私有git伺服器
一、概述 伺服器的免密登入和git伺服器的搭建,關鍵都是要學會把自己用的機器的公鑰新增到伺服器上,讓伺服器“認識”你的電腦,從而不需要輸入密碼就可以遠端登入伺服器上的使用者 免密登入當然是登入root使用者,而搭建git伺服器需要在伺服器上建立一個git使用者。注意伺服器上每個使用者識別的公鑰存在不同
在Linux上搭建私有Git伺服器並建立私有遠端倉庫
遠端倉庫實際上和本地倉庫沒啥不同,純粹為了 7x24 小時開機並交換大家的修改。GitHub 是一個免費託管開原始碼的遠端倉庫; 但是對於某些資原始碼(如生命的商業公司來說),不想公開原始碼, 可以自己搭建一臺 Git 伺服器作為私有倉庫使用。
如何在windows上搭建私有git伺服器
注:本文使用gitblit 1、下載並安裝jdk. 點選Accept,根據PC配置下載32位或64位的jdk 2、配置Java環境變數 右鍵” 計算機” => ”屬性” => ”高階系統設定” => ”高階” => “環境變數” =&
利用阿里雲搭建私有Git伺服器
伺服器系統:Centos 6 (檢視centos版本命令:lsb_release -a) 客戶端系統:Windows 7 一、伺服器端安裝Git ==通常centos上使用yum源安裝的git版本過低== 1. 檢查系統上是否已經安裝git,若已有則解除安裝 // 檢視當前git版本 #
[Git]不給Github交保護費:CentOS下的私人Git的搭建方法
這篇文章可以結合我上一篇文章來看,也就是搭建ECS伺服器的教程: 1.首先安裝git 安裝前試著用下面這行命令看看你的伺服器上裝沒裝git,如果沒裝,再去安裝: git --version安裝指令: yum install -y git 2.建立Git管理使用者,
CentOS 7 搭建 gogs Git 伺服器
CentOS 7 搭建 gogs Git 伺服器 本地環境如下: Linux 系統環境為:CentOS Linux releas
通過用戶名、密碼提交的方式搭建私有git服務端
服務 byte fat comm protoc delta .com abc ref 1. 系統環境 centos 7 git 1.8.3 yum -y install git 2).創建屬於自己的git庫 mkdir /myGit
利用阿裏雲搭建私有Git服務器
clone tar.gz 時報 郵箱 log 項目 fun con archive 服務器系統:Centos 6 (查看centos版本命令:lsb_release -a) 客戶端系統:Windows 7 一、服務器端安裝Git ==通常centos上使用yum源安裝
Centos下安裝gitolite+git
一直以來我都是用SVN的,但最近做迭代開發、多分支時,發現SVN使用起來極不方便。因此打算換成git做原始碼管理。git的理論以及特性本文就不做講解了,本主主要講解怎麼安裝,配置git、以及git許可權管理服務gitolite. 組網結構 git伺服器是用於儲存git
centos 6.8下搭建PPTP VPN伺服器
centos 6.8下搭建PPTP VPN伺服器 一. 通過yum安裝 ppp和pptpd yum -y install ppp pptpd 二. 配置pptpd相關引數 2.1 配置/etc/pptpd.conf 找到下面兩行,去掉註釋,並修改IP
CentOS下搭建SVN伺服器
一,介紹SVN SVN是Subversion的簡稱,是一個開放原始碼的版本控制系統,相較於RCS、CVS,它採用了分支管理系統,它的設計目標就是取代CVS。網際網路上很多版本控制服務已從CVS遷移到Subversion。說得簡單一點SVN就是用於多個人共同開發同一個
linux/centos 下的安裝git
下載git wget https://github.com/git/git/archive/v2.14.1.zip 安裝依賴 sudo yum -y install zlib-devel openss
Git Servers Windows下搭建
下載所需軟體 git gitblit jdk 重點是gitblit 下載好後解壓即可 建立一個用於儲存庫的資料夾 進入安裝目錄的data資料夾下修改配置檔案,若gitblit中有include其他配置檔案,則進入其他配置
CentOS 7下搭建配置SVN伺服器
1. 安裝 CentOS通過yum安裝subversion。 $ sudo yum install subversion subversion安裝在/bin目錄: $ which svnserve /bin/svnserve 檢查一下subversion是
Centos下搭建SVN伺服器並同步倉庫內容到WEB目錄
第一步:安裝svnversion Centos下可以使用yum安裝,自動配置環境變數 yum install subversion 安裝完成後可以用 svn help來檢查是否安裝成功 第二步:配置svnversion mkdir -p /home/svn/r
CentOS下Gerrit程式碼評審伺服器的搭建與使用
一、準備工作 安裝CentOS7作業系統,準備Gerrit軟體安裝包:gerrit-2.10.war。 安裝sendmail: [[email protected] ~]#yum install -y sendmail
通過使用者名稱、密碼提交的方式搭建私有git服務端
1. 系統環境 centos 7 git 1.8.3 yum -y install git 2).建立屬於自己的git庫 mkdir /myGit git init --bare xiangyun.git 3). 新增使用者 user
linux(centOS)下搭建node伺服器三、 pm2管理和保持後臺執行node應用
一、安裝pm2 全域性安裝pm2: npm install -g pm2 安裝完成檢視幫助命令(pm2 -h)報錯: -bash:pm2:command not found 執行: ln
Git在Windows下搭建本地遠端倉庫及一些問題小結
Git是一個好東西,但是一般都是用來和Github互動,而如果是在公司內部、研發小組內部使用,把程式碼放在github就不合適了,所以需要在本地建立遠端倉庫。 這兩天一直在搞這個東西,但是踩了無數的坑,主要原因有二:①git通訊主要是ssh,有人說github用https替