1. 程式人生 > 實用技巧 >Git | Git Server 搭建,在自己的伺服器上進行 git server 搭建

Git | Git Server 搭建,在自己的伺服器上進行 git server 搭建

系列文章目錄


目錄


前言

平常都是在用 GitHubGitLabGitee 等服務,那我們如何自己搭建一個 Git Server,這裡我們搭建一個簡單的 Git Server

操作

說明: 本示例在一臺雲伺服器上搭建的 git 服務,其中 1,2,3,4,5 均為在雲伺服器進行的操作。
當然也可以在虛擬機器或者 docker 中進行操作

1. 建立 git 使用者

adduser \
   --system \
   --shell /bin/bash \
   --gecos 'Git Version Control' \
   --group \
   --disabled-password \
   --home /home/git \
   git

2. 建立 .ssh 目錄

/home# su git
/home# cd git
/home/git# mkdir .ssh && chmod 700 .ssh
/home/git# touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys

3. 自定義倉庫的根目錄

/home/git# mkdir code_repository

注意: 這裡需要使用 git 使用者進行操作

4. 在伺服器上建立個裸倉庫

/home/git# cd code_repository/
/home/git/code_repository# mkdir abc.git
/home/git/code_repository# cd abc.git/
/home/git/code_repository/abc.git# git init --bare

注意: 這裡需要使用 git 使用者進行操作

5. 手動配置一個公鑰

將我們自己本地的公鑰檔案加入 /home/git/.ssh/authorized_keys

6. 在本地測試一下能否操作

$ mkdir abc
$ cd abc
$ git init
$ touch README.md
$ git add .
$ git commit -m "first add reademe.md"
$ git remote add origin ssh://[email protected]:/home/git/code_repository/abc.git
$ git push -u origin master

注意: 這裡在本機執行的,不是在伺服器上

總結

這種方式建立的倉庫,並沒有設定任何許可權,只要在 authorized_keys 的公鑰使用者就可以對倉庫進行讀寫操作

參考