1. 程式人生 > >在伺服器上搭建基於ssh協議的git遠端倉庫

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

最近部門打算將專案程式碼從 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 命令: i 進入編輯模式,esc回到命令模式,:wq 儲存並退出)
vim ~/.ssh/authorized_keys
第四步,新增新的專案到git中央倉庫
# 進行你的專案所在目錄
cd myproject
# git 初始化
git init
# 將當前目錄及所有子目錄新增到暫存區
git add .
# 將暫存區的內容全部提交到本地倉庫
git commit -m ‘initial commit’
# 新增到遠端git倉庫,名稱為 myproject
git remote add origin [email protected]:/opt/git/myproject.git
# push本地倉庫內容到遠端倉庫
git push origin master
搞定!!!# 新增完成之後其他人就可以通過git clone來克隆此倉庫和push改動了
git clone 
[email protected]
:/opt/git/myproject.git cd myproject vim README git commit -am ‘fix for the README file’ git push origin master

相關推薦

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

最近部門打算將專案程式碼從 svn 遷移到 git 上,故學習了一下 git 的內容。對 git 的強大早有耳聞,但是一直沒有機會用上,所以這次的遷移我也是積極推進,特此將學習的東西記錄下來。這篇為第一篇,後面將持續更新。第一步,在伺服器上建立git專用的使用者# 建立 gi

Windows下搭建基於SSHGit伺服器

Git客戶端安裝 選擇安裝元件 :也可以預設選擇; 圖示元件(Addition icons) : 選擇是否建立快速啟動欄圖示 或者 是否建立桌面快捷方式;桌面瀏覽(Windows Explorer integration) : 瀏覽原始碼的方法, 單獨的上下文瀏覽

搭建基於SSHGit伺服器

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

在阿里雲伺服器搭建基於nginx的直播服務

對於沒有接觸過nginx的我,在看了別人搭建的直播服務後心癢癢了,也就照著搭建了一個直播服務,我是在阿里雲伺服器上搭建的,首先來說一下阿里雲伺服器,我買的是一個ECS的雲伺服器,系統是CentOS7 然後用Xshell連線上我的伺服器,發現連線不上,原來是阿里雲伺服器的

基於SSH協議clone GitHub遠端倉庫到本地-git

輸入框 setting 生成 ready 可能 取代 初學 into etc 經常逛 GitHub 的可能都知道,在 clone 遠端倉庫的時候,會有兩個選項,如下圖: 首先我們來說明一下兩種方式的區別。 使用 HTTPS url 克隆對初學者來說會比較方便,復制HTT

#後端筆記#在CentOS利用 nginx + nginx-rtmp-module 搭建基於HLS協議的直播伺服器

一、直播協議簡介: 搭建之前,先簡單說說現在網上主流的直播協議: 1、RTMP:      實時訊息傳輸協議,Real Time Messaging Protocol,是 Adobe Systems 公司為 Flash 播放器和伺服器之間音訊、

[轉]python3之paramiko模組(基於ssh連線進行遠端登入伺服器執行命令和傳下載檔案的功能)

轉自:https://www.cnblogs.com/zhangxinqi/p/8372774.html 閱讀目錄 1、paramiko模組介紹 2、paramiko的使用方法 回到頂部 1、pa

Git基於SSH協議clone GitHub遠端倉庫到本地】

經常逛 GitHub 的可能都知道,在 clone 遠端倉庫的時候,會有兩個選項,如下圖: 首先我們來說明一下兩種方式的區別。 使用 HTTPS url 克隆對初學者來說會比較方便,複製HTTPS

在Linux伺服器搭建Git遠端倉庫並Push本地庫

伺服器 安裝Git 新增git使用者 adduser git -m 設定密碼 passwd git 切換到git使用者,新建repos目錄,在該目錄下新建庫hello.git目錄, cd到hello.git目錄,初始化該庫: git --ba

服務器搭建使用SSH賬戶登錄的Git倉庫

ssh 服務器 data install strong bare 客戶端 訪問服務器 sta 1、安裝git yum install -y git 2、創建git倉庫保存的目錄 mkdir /data/git_repo 3、初始化空倉庫 cd /data/git_repog

如何在伺服器搭建Git版本倉庫?------玉米都督

最近要做一個django的商城網站放在伺服器上,. 以前都是用xftp 直接上傳修改原始碼.但是發現這種方法太lowB 所以需要學習一下git 技術   網站原始碼沒有放在git倉庫下,伺服器上分了2個部分,一個是git自己的版本控制,另外一個則是git 的鉤子 勾到

基於TortoiseGit完成原生代碼Git遠端倉庫

    今天涉及到了要將本地的程式碼檔案上傳到現有的Git遠端倉庫中去,這個我之前沒有去使用過,只用過SVN來做版本控制了,座椅今天花了點時間來簡單學習一下,之前使用SVN的時候我使用的工具是TortoiseSVN,一個很小巧但是很強大的管理工具,今天上傳Git遠端倉庫我使用的工

利用win10的Linux子系統在PC搭建git遠端倉庫

在windows上搭建git遠端倉庫一直比較麻煩,主要是由於windows的ssh服務支援比較難辦。Microsoft Store現在提供了一個名為Ubuntu的免費App,執行後可以在windows10上建立一個沒有圖形介面的ubuntu子系統並自帶ssh服

Mac下搭建基於rtmp協議的ngnix本地伺服器

1、安裝homebrew  ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 2、clone到本地 brew tap denji/nginx

伺服器搭建 Git倉庫

服務端 安裝Git [root@localhost ~]# yum install -y git 建立一個git使用者,用來執行git服務 [root@localhost ~]# adduser git && cd ~git [roo

git 伺服器搭建,在自己伺服器搭建私有倉庫

建立一個簡單的私人Git版本控制伺服器,首先得有個伺服器(屁話)。這種方式適合人比較少的情況,管理不需要很複雜,只要增加幾個賬號就能搞定。 如下面的情況,有一個伺服器,兩個客戶端。 伺服器:Debian7.5 (192.168.10.14) 用 戶:git (git-s

在雲伺服器搭建git伺服器遇到的問題及解決

使用了將近一年的騰訊雲伺服器了,學生價很是公道。但是今天遇到了一個極其糾結的問題,在部署git伺服器的時候,始終無法使用ssh公鑰金鑰配對從而免密碼連線(之間我一直使用的是ssh [email protected] 然後輸入密碼的方式連線的)。 伺服器上除了預設的

如何在伺服器搭建Git版本倉庫(乾貨)

一、搭建思想(很重要!!!) 主要分為兩個方面,Git倉庫和專案庫(圖用的畫圖工具畫的,太low了.......) 1、你需要在你伺服器上擁有一個Git倉庫(提供者) 2、本地倉庫、你的伺服器專案倉庫、或者其他伺服器倉庫(實際使用者),開發或者上線的庫 二、搭建過程 我的伺服器是:CentOS6.*版本(

在Mac搭建帶ssl協議和域名指向的Apache伺服器

顧名思義,就是要在蘋果電腦上搭建 Apache 伺服器,並且支援 https 協議,能用指定域名訪問(有些開發除錯需要註冊域名,比如除錯微信JS-SDK),當然最好能在手機端進行除錯。首先,Mac 系統自帶 Apache 伺服器,只需在終端輸入 sudo apachectl start 回

linux服務器搭建gitolite實現對git server的版本庫的權限控制

搭建gitolite一、環境介紹: 1.1Git賬戶管理機器manageip:10.0.0.56 [root@manage ~]# cat /etc/redhat-release CentOS release 6.7 (Final) [root@manage ~]# hostname manage [roo