swsrl 发表于 2015-4-1 07:17:34

Ubuntu server 搭建Git server

  
  Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客户端用户的本地都是一个版本管理控制器。
  Ubuntu server 版本为12.04
  搭建步骤如下:
  1、更新Ubuntu server
  操作如下:
  $ apt-get update
  $ apt-get upgrade
  如上命令更新并升级系统,防止在安装git过程中,出现部分依赖包没有安装。
  
  2、安装openssh的server和client
  其实通常情况下,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
  
  3、安装git
  $ sudo apt-get install git-core  
  安装完毕即可!
  
  4、配置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  // 管理员在客户端使用下面的命令,建立无口令登录。 
  
  5、创建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
    
    6、获取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下作为客户端如何使用。

  
    
  
  
  
  
  
  
页: [1]
查看完整版本: Ubuntu server 搭建Git server