1. 安裝git
$ yum install git
2. 建立git使用者,用來執行git服務
$ adduser git
3. 禁止git使用者登入shell
出於對安全性的考慮,需要禁止git使用者進行shell登入,可以通過編輯passwd檔案來實現
$ vi /etc/passwd
將git:x:1000:1000::/home/git:/bin/bash
改為
git:x:1000:1000::/home/git:/usr/bin/git-shell
4. 建立git倉庫
在/var下新建乙個git資料夾
$ cd /var
$ mkdir git
在git資料夾下初始化乙個空倉庫
$ cd git
$ git init --bare test.git
5. 更改所屬的使用者組
$ chown -r git:git test.git
6. 建立證書登入(其實這一步可以算作git伺服器的使用了)
使用時我們需要建立乙個公鑰,並將它儲存到到git伺服器上,這樣才有許可權推送**
我們先開啟電腦的終端,輸入以下指令
$ cd ~
$ ssh-keygen -t rsa -c "******@qq.com"
******@qq.com
是你的郵箱
執行之後會提示你輸入一遍使用者名稱和兩遍密碼,輸入完之後公鑰就生成好了
我們先將生成的公鑰顯示到終端,然後手動複製下來(也可以自己去找id_rsa.pub這個檔案,並將裡面的內容全部複製下來)
$ cat .ssh/id_rsa.pub
接下來回到伺服器,把生成好的公鑰寫到伺服器的/home/git/.ssh/authorized_keys檔案裡,一行乙個
$ vi /home/git/.ssh/authorized_keys
按i 鍵開啟輸入模式,將公鑰貼上上之後按esc鍵結束輸入,然後輸入 「:wq
」 並回車進行儲存
(未進行任何操作時可以輸入 「:q
」,進行退出,進行了操作卻不想儲存可以輸入 「:q!
」 強制退出)
到此,git伺服器就搭好了,接下來就是git伺服器的使用
1. 進入專案資料夾,進行初始化
$ cd 專案路徑
$ git init
2. 將專案新增到快取區
$ git add .
「 . 」 代表新增目錄下的所有檔案
3. 將專案提交到本地倉庫
$ git commit -m "備註"
現在,我們已經將專案初始化完畢,接下來需要將專案提交到git伺服器
4. 將專案新增到遠端倉庫
可以通過$ git remote rm origin
指令來刪除遠端倉庫
5. 推送專案
如果是第一次推送
$ git push -u origin master
第一次以後使用這個就可以了(tips: 每次推送都需要先執行2、3步驟)
$ git push origin master
1. 轉殖遠端倉庫
使用git clone
命令轉殖遠端倉庫
2. 從遠端倉庫拉取更新
$ git pull origin master
報不同步的錯時還可以強制拉取更新
$ git fetch --all
$ git reset --hard origin/master
3. 獲取指定版本的**
首先使用git clone
命令將所需要的專案轉殖下來
然後前往專案資料夾,使用git log
指令檢視歷史版本
$ cd test
$ git log
然後就會看到每個版本的commit,現在就可以通過commit獲取歷史版本的**了
commit只取前7位即可
$ git checkout 068976f
可以建立乙個新分支用來提交你修改後的**
$ git checkout -b newbranch
Git 伺服器搭建(Linux)
ubuntu debian sudo apt get install git 二 建立乙個單獨的 git使用者 sudo useradd m git sudo passwd git yourpassword 三 然後,在新建的git使用者主目錄下建立乙個資料夾作為git的倉庫,並為這個倉庫配備最基本...
Linux搭建git伺服器
總結本人在linux伺服器上搭建git伺服器遇到的 問題,ps 基於centos 在伺服器上安裝git伺服器 yum install git 建立git使用者 useradd d home git git passwd git 給git使用者設定密碼 zhangmx520 賦予ssh許可權 vi e...
Linux搭建git伺服器
1.安裝git yum install git 2.新建乙個git使用者 adduser git 3.在git目錄新建乙個.ssh的目錄 mkdir home git ssh 4.在.ssh目錄下新建authorized keys檔案,用來存放客戶端的ssh key vi authorized ke...