centos 搭建git 環(huán)境 自動同步和支持工作目錄

Centos 7 install git

服務(wù)器環(huán)境

CentOS Linux release 7.4.1708 (Core)

cat  /etc/redhat-release

1. 在服務(wù)器上安裝git

yum install -y git

2. 建立一個git用戶,并做初步配置

adduser git

3. 添加公鑰證書

cd /home/git
mkdir .ssh
vi authorized_keys

本地生生密鑰

ssh-keygen -t rsa -C "your_email@example.com"

將生成的密鑰id_rsa.pub添加到 authorized_keys

ssh-rsa AAAAB3NzaC1yc2EAAAA5AQABAAABAQC1pYB1I9rlojWR7bha+sXTqbI/ZGgv4feaXMCeKK6CCHxTdUAdOsbiIuOOrk5J2uXOXNJ+YiRaMGNkCdkbI8HVMFIp6sCKjKB7qbT5lYI/RXpEbQZ1oazB2ibUaIbZf/JTiBJpK8F/s9yDeuUS3qWIfdiKUyDTH92/IJxqU1LrgzwbtLHnGSacFtnxMfu/bR1pD9vBUYTEdXrI+bFQYCK8G13iCJhGNQhU5Y89vKDSJZGb7PRyf4VPHs8fhE8grkZEaJeDs0wCmZKnaxt/lu/kNqQI7NhQmT/+WgaKhDUMdZv48SP0MnQw//jycUzo1akXH2WhgsrVFf2UtTYTX2iT your_email@example.com

4. 創(chuàng)建倉庫

創(chuàng)建一個裸倉庫,裸倉庫沒有工作區(qū),因為服務(wù)器上的Git倉庫純粹是為了共享,所以不讓用戶直接登錄到服務(wù)器上去改工作區(qū),并且服務(wù)器上的Git倉庫通常都以.git結(jié)尾。然后,把owner改為git

cd /srv
git init --bare sample.git
chown -R git:git sample.git

5. 克隆倉庫

git clone git@server:/srv/sample.git

如果出現(xiàn)以下錯誤刪除本地user/<yourname>/.ssh/known_hosts 文件

mark

6. post-receive實現(xiàn)自動同步到站點目錄

如果你是用 git init --bare mygit.git 建立的倉庫.
該倉庫是沒有工作目錄的.但問題中你說找不到工作目錄.說明遠(yuǎn)程服務(wù)可能是部署工作,需要包含工作目錄.

cd /home/testgit/sample.git
cd hooks
# 這里我們創(chuàng)建post-receive文件
vim post-receive

./git/hooks/post-receive 文件內(nèi)容

#!/bin/bash
git --work-tree=/home/www checkout -f

權(quán)限相關(guān):

# 保存退出后,將該文件用戶及用戶組都設(shè)置成git
chown git:git post-receive
# 由于該文件其實就是一個shell文件,我們還應(yīng)該為其設(shè)置可執(zhí)行權(quán)限
chmod +x post-receive

7. 創(chuàng)建支持工作目錄的遠(yuǎn)程倉庫

# 遠(yuǎn)程服務(wù)器初始化倉庫
git init <倉庫名>
# 設(shè)置允許遠(yuǎn)程接收文件
git config receive.denyCurrentBranch ignore

在遠(yuǎn)程倉庫,post-receive 鉤子文件中添加自動更新工作目錄內(nèi)容

WORK_TREE='../'
git  --work-tree="${WORK_TREE}" reset --hard

:smiling_imp: 確保 post-receive 具有執(zhí)行權(quán)限

后續(xù)更新gitolite 的相關(guān)使用

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容