首頁 >開發工具 >Git >如何搭建與設定Git伺服器

如何搭建與設定Git伺服器

青灯夜游
青灯夜游轉載
2019-02-26 13:11:445153瀏覽

這篇文章帶給大家的內容是介紹如何搭建和配置Git伺服器,有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

安裝Git

#安裝相依性##

yum install curl-devel expat-devel gcc gcc-c++ 
yum install perl perl-devel gettext-devel openssl-devel zlib-devel

編譯安裝Git

# 下载Git
wget https://www.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz

# 解压
tar zxvf git-2.9.5.tar.gz
cd git-2.9.5

# 预编译、编译、安装
make configure
./configure --prefix=/usr/local/git
make && make install

設定環境變數

vim /etc/profile
export PATH="$PATH:/usr/local/git/bin"
source /etc/profile # 使修改立即生效

伺服器配置

建立Git用戶

#建立一個git用戶群組和用戶,用來執行git服務:

groupadd git
useradd git -g git

建立憑證登陸

收集所有需要登入的使用者的公鑰,公鑰位於id_rsa.pub檔案中,把我們的公鑰導入到/home/git/.ssh/authorized_keys檔案裡,一行一個。

如果沒有該檔案需要建立它:

cd /home/git/
mkdir .ssh
chmod 755 .ssh
touch .ssh/authorized_keys
chmod 644 .ssh/authorized_keys

那麼如何在自己的客戶端產生公鑰呢?

如果是windows電腦可以開啟Git客戶端,如果是Mac可以開啟Mac自帶的終端,執行以下指令

ssh-keygen -t rsa -C "你的邮箱"  //例如ssh-keygen -t rsa -C "xxx@gmail.com"
上面的指令執行成功後,透過以下指令取得公鑰
cat ~/.ssh/id_rsa.pub
終端工具會把公鑰印出來,複製公鑰,填入服務端的authorized_keys即可

初始化Git倉庫

首先我們選定一個目錄作為Git倉庫,假定是/ home/gitrepo/blog,在/home/gitrepo目錄下輸入指令:

cd /home
mkdir gitrepo
chown git:git gitrepo/
cd gitrepo

git init --bare blog.git
# 执行完会有如下提示
Initialized empty Git repository in /home/gitrepo/blog.git/

以上指令Git建立一個空倉庫,伺服器上的Git倉庫通常都以.git結尾。然後,把倉庫所屬使用者改為git:

chown -R git:git blog.git

複製倉庫

git clone git@192.168.111.129:/home/gitrepo/blog.git
# 或
git clone ssh://git@192.168.111.129:22/home/gitrepo/blog.git  //版本库地址,支持ssh协议

注意:如果此處提示###git-upload -pack: command not found###,可以在版本伺服器上使用###命令###
ln -s /usr/local/git/bin/git-upload-pack /bin/
###然後重新執行git clone###成功拉取項目後,就可以在本地編輯提交了## #
touch index.php
git add index.php
git commit -a -m'提交index.php文件'
git push origin master   //推送到公共服务器
###在執行push命令式,如果報###git-receive-pack: command not found###錯誤,則再建立一個軟連接即可###
ln -s /usr/local/git/bin/git-receive-pack /bin/
###再次執行推送命令即可。 ######以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。更多精彩內容大家可以追蹤php中文網相關教學欄位! ! ! ###

以上是如何搭建與設定Git伺服器的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除

相關文章

看更多