在伺服器上搭建遠端git倉庫

2022-04-02 22:03:42 字數 1756 閱讀 1447

推薦使用執行liunx的機器

請獲取root許可權後進行下面操作

# 檢查是否安裝了git如果有版本號就無需再安裝

git -v

# 安裝git

sudo apt-get install git

sudo adduser git
收集所有需要登入的使用者的公鑰,就是他們自己的id_rsa.pub檔案按照本文找id_rsa.pub檔案,把所有公鑰匯入到伺服器的/home/git/.ssh/authorized_keys檔案裡(如果沒有這些目錄和檔案就自己建立),一行乙個。

先選定乙個目錄作為git倉庫,假定是根目錄下的/srv/sample.git,在/srv目錄下輸入命令:

sudo git init --bare sample.git
git就會建立乙個裸倉庫,裸倉庫沒有工作區,因為伺服器上的git倉庫純粹是為了共享,所以不讓使用者直接登入到伺服器上去改工作區,並且伺服器上的git倉庫通常都以.git結尾。然後,把owner(許可權控制)改為git

sudo chown -r git:git sample.git
git:x:1001:1001:,,,:/home/git:/bin/bash
改為:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
這樣,git使用者可以正常通過ssh使用git,但無法登入shell,因為我們為git使用者指定的git-shell每次一登入就自動退出。

現在,可以通過git clone命令轉殖遠端倉庫了,在各自的電腦上執行:

git clone git@server:/srv/sample.git
剩下的推送就簡單了,關於如何在本地使用可以參考,這篇文章

1、**倉庫

# 進入伺服器上建立好的git倉庫

cd sample.git

# 進入到hooks

cd hooks

# 複製乙份post-update的hook

cp post-update.sample post-update

# 給新複製的post-update檔案新增執行許可權

chmod +x post-update

2、伺服器生產環境**目錄

cd /srv

mkdir git_hook_demo

cd git_hook_demo

# 轉殖剛才建立的倉庫

# 設定**目錄可訪問的使用者組

sudo chown git:git ./sample -r

cd sample

# 獲取到當前目錄

pwd

3、修改第一步的post-update檔案

unset git_dir

dir_one=剛才儲存的目錄位址

cd $dir_one

git pull **倉庫所在的位址 master

4、本地clone倉庫即可提交**進行使用

參考文章:

linux伺服器上搭建git倉庫

建立git使用者,使用者組預設為git useradd git 修改git賬戶的密碼 passwd gityum install y git 切換至 資料夾 cd home git code 例項化倉庫 git init bare search.git 修改許可權 chown r git git s...

伺服器上的 Git 在伺服器上搭建 Git

現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。note 這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到...

伺服器上的 Git 在伺服器上搭建 Git

現在我們將討論如何在你自己的伺服器上搭建 git 服務來執行這些協議。note 這裡我們將要演示在 linux 伺服器上進行一次基本且簡化的安裝所需的命令與步驟,當然在 mac 或 windows 伺服器上同樣可以執行這些服務。事實上,在你的計算機基礎架構中建立乙個生產環境伺服器,將不可避免的使用到...