在伺服器上搭建基於ssh協議的git遠端倉庫

2021-08-17 11:41:00 字數 1813 閱讀 8940

最近部門打算將專案**從 svn 遷移到 git 上,故學習了一下 git 的內容。

對 git 的強大早有耳聞,但是一直沒有機會用上,所以這次的遷移我也是積極推進,特此將學習的東西記錄下來。這篇為第一篇,後面將持續更新。

第一步,在伺服器上建立git專用的使用者

# 建立 git 使用者

useradd git

# 設定密碼

passwd git

# 建立 git 組

groupadd git

# 將 git 使用者新增到 git 組

usermod -a -g git git

第二步,建立倉庫目錄並授權

# 建立倉庫所在目錄,需要使用 root 許可權

sudo mkdir /opt/git

# 設定組內讀寫許可權

sudo chmod 775 /opt/git

# 將倉庫所在目錄擁有組改為 git

sudo chgrp -r git /opt/git

第三步,配置免密登入 ssh

# 在客戶端電腦上命令列執行,windows系統可以使用 git bash(安裝git的時候自帶的)

ssh-keygen -t rsa

# 一路回車,生成公鑰,檢視公鑰內容(在當前使用者目錄下有個隱藏目錄.ssh)

cat ~/.ssh/id_rsa.pub

將內容複製

# 將內容複製,伺服器端切換到 git 使用者

su git

# 回到使用者home目錄

cd ~

# 建立 ~/.ssh 並授權,保險起見,我們以下都使用絕對路徑

mkdir ~/.ssh && chmod 700 ~/.ssh

touch ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys

# 編輯 authorized_keys檔案

vim ~/.ssh/authorized_keys

第四步,新增新的專案到git**倉庫

# 進行你的專案所在目錄

cd myproject

# git 初始化

git init

# 將當前目錄及所有子目錄新增到暫存區

git add .

# 將暫存區的內容全部提交到本地倉庫

git commit -m 『initial commit』

# 新增到遠端git倉庫,名稱為 myproject

git remote add origin git@gitserver:/opt/git/myproject.git

# push本地倉庫內容到遠端倉庫

git push origin master

搞定!!!

# 新增完成之後其他人就可以通過git clone來轉殖此倉庫和push改動了

git clone git@gitserver:/opt/git/myproject.git

cd myproject

vim readme

git commit -am 『fix for the readme file』

git push origin master

基於SSH搭建SFTP伺服器

基於ssh搭建sftp伺服器 基於 ssh 的 sftp 服務相比 ftp 有更好的安全性 非明文帳號密碼傳輸 和方便的許可權管理 限制使用者的活動目錄 開通 sftp 帳號,使使用者只能 sftp 操作檔案,而不能 ssh 到伺服器 限定使用者的活動目錄,使使用者只能在指定的目錄下活動,使用 sf...

搭建基於SSH的Git伺服器

之前的一直使用的git作為版本控制工具 最早是同事本地搭建的git伺服器保管 後來使用的是github私有倉庫,保管 可以很方便的進行 審查工作 最近心血來潮,自己嘗試搭建,不算太難,小結一下。虛擬機器安裝的系統 centos 6.5 x64 安裝比較簡單,不概述 筆者系統 ubuntu 14.04...

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

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