Git服務器安裝與配置--詳解版

本文主要內容來自菜鳥教程,在它的基礎上增加一些解釋說明(紅字部分),如侵刪!

https://www.runoob.com/git/git-server.html

 

以 Centos 爲例搭建 Git 服務器。

1、安裝Git

$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum install git

接下來我們 創建一個git用戶組和用戶,用來運行git服務:

$ groupadd git (創建用戶組名稱爲git,名字根據自己來定)

$ useradd git -g git (添加一個用戶名爲git的用戶到git用戶組中)

注:這裏比較混淆人的地方是使用了兩個相同的名字,爲避免混淆,建議使用git_group和git_user這樣的名稱加以區分

 

 

2、在windows客戶端創建公鑰

打開Git目錄下的Git Bash,輸入ssh-keygen,回車

生成的密鑰放在id_rsa.pub中。

注:回車後會提示設置密鑰存儲的文件名,使用默認的id_rsa就好,如下圖

 

3、創建證書登錄

把我們的公鑰導入到服務器的/home/git/.ssh/authorized_keys文件裏,一行一個。

如果沒有該文件創建它:

$ cd /home/git/

$ mkdir .ssh

$ chmod 755 .ssh

$ touch .ssh/authorized_keys

$ chmod 644 .ssh/authorized_keys

 

4、初始化Git倉庫

首先我們選定一個目錄作爲Git倉庫,假定是/home/gitrepo/runoob.git,在/home/gitrepo目錄下輸入命令:

$ cd /home

$ mkdir gitrepo

$ chown git:git gitrepo/

$ cd gitrepo

注:

 

 

$ git init --bare gittest.git

Initialized empty Git repository in /home/gitrepo/gittest.git/

以上命令Git創建一個空倉庫,服務器上的Git倉庫通常都以.git結尾。然後,把倉庫所屬用戶改爲git:

$ chown -R git:git gittest.git

5、克隆倉庫

$ git clone [email protected]:/home/gitrepo/gittest.git

Cloning into 'gittest'... warning: You appear to have cloned an empty repository. Checking connectivity... done.

192.168.0.1 爲 Git 所在服務器 ip ,你需要將其修改爲你自己的 Git 服務 ip。

這樣我們的 Git 服務器安裝就完成。

注:這裏有一個非常混淆人的地方是[email protected],服務器用戶名使用git,這讓許多人以爲是跟前面的git是一個意思。本人照着教程試了好幾遍,一直提示需要輸密碼.

Cloning into 'a9school'...

[email protected]'s password:

fatal: Could not read from remote repository.

後來從別的博客中得知,這裏的git其實是之你當前使用的服務器的登錄名稱,比如說你的服務器用戶名是默認的root,那麼你的寫法就是

root@服務器ip:/home/gitrepo/gittest.git

另外,如果使用烏龜Tortorise Git clone的話,用戶名和密碼也就是你的服務器用戶名和密碼。

 

附常見問題:

在windows平臺下git add 的時候經常會出現錯誤:fatal: CRLF would be replaced by LF in xxx......

問題原因:

Git在windows下,默認是CRLF作爲換行符,git add 提交時,檢查文本中有LF 換行符(linux系統裏面的),則會告警。所以讓git忽略該檢查即可。

解決辦法,執行Git命令:

$ git config --global core.autocrlf false

$ git config --global core.safecrlf false

附:一定要執行兩個命令,只執行第一個不生效。

 

最後,非常感謝原博主菜鳥教程的分享

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