Ubuntu server 搭建Git server

 

  Ubuntu server 搭建Git server,git相比svn,最主要就是分佈式了,每一個客戶端用戶的本地都是一個版本管理控制器。python

  Ubuntu server 版本爲12.04git

  搭建步驟以下:github

  一、更新Ubuntu servershell

  操做以下:bash

  $ apt-get update服務器

  $ apt-get upgradessh

  如上命令更新並升級系統,防止在安裝git過程當中,出現部分依賴包沒有安裝。分佈式

  

  二、安裝openssh的server和clientsvn

  其實一般狀況下,Ubuntu server都默認安裝了openssh。安裝SSH的目的,SSH 協議用於爲 Git 提供遠程讀寫操做,是遠程寫操做的標準服務,ssh可用於遠程登陸,服務端須要安裝openssh-server,客戶端須要安裝openssh-client。介紹ssh協議是由於gitolite以及gitosis都是基於ssh公鑰認證的。工具

  安裝openssh以前,能夠先查看是否安裝過

  $ ps -ef | grep ssh

  若是沒有,就繼續以下安裝步驟,

  $ sudo apt-get install openssh-server openssh-client

  

  三、安裝git

  $ sudo apt-get install git-core  

  安裝完畢便可!

 

  四、配置git用戶

  在Ubuntu Server上新增一個git用戶,用於爲安裝gitosis作準備

  $ sudo adduser --system --shell /bin/bash --group git  // 建立用戶 git,並設置用戶的 shell 爲可登陸的 shell,如 /bin/bash,同時添加同名的用戶組。

  $ sudo adduser git ssh  // 有的系統,只容許特定的用戶組(如 ssh 用戶組)的用戶才能夠經過 SSH 協議登陸,這就須要將新建的 git 用戶添加到 ssh 用戶組中。

  $ sudo passwd git  // 爲 git 用戶設置口令。

  $ ssh-copy-id git@server  // 管理員在客戶端使用下面的命令,創建無口令登陸。 

 

  五、建立git Server的倉庫存儲

  $ sudo mkdir /home/git/repositories  // 建立git倉庫存儲目錄

  $ sudo chown git:git /home/git/repositories  // 設置只容許git用戶才能訪問此目錄

  $ sudo chmod 755 /home/git/repositories  // 設置目錄訪問的可讀寫或執行的權限

  初始化一下服務器的git用戶,這一步實際上是爲了安裝gitosis作準備。在任何一 臺客戶端機器上使用git,第一次須要初始化一下:

  $ git config --global user.name "name"       // 例如:james

  $ git config --global user.email "name@server"   // 例如:james@yahoo.com

  

  六、獲取Gitosis,並安裝

  Gitosis 就是一套用來管理 authorized_keys文件和實現簡單鏈接限制的腳本。簡單地說,Gitosis就是git的權限策略控制器。  

  由於Gitosis源碼安裝方式經過python方式,因此這裏要檢測是否安裝了python的setup tool,沒有即安裝此工具, 這個也是爲了gitosis作準備:

  $ sudo apt-get install python-setuptools

  去到一個臨時目錄

  $ cd /tmp

  $ git clone https://github.com/res0nat0r/gitosis.git  // 下載Gitosis的源代碼

  $ cd /tmp/gitosis

  $ sudo python setup.py install

  

  說明:Gitosis有一個改進的升級版Gitolite,這裏以安裝Gitosis爲標準,因此不對Gitolite介紹。Gitosis安裝完以後,即Git服務器就安裝完成,接下來,須要爲Git設置一個管理員,經過Gitosis初始化以後,才能正常使用Git做爲版本控制進行相關版本管理。

  下一節,將詳細描述經過建立Git管理員來初始化Git Server,並詳細描述Git在Windows下做爲客戶端如何使用。

相關文章
相關標籤/搜索