Chinaunix首页 | 论坛 | 博客
  • 博客访问: 161766
  • 博文数量: 51
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 471
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-11 10:24
文章分类

全部博文(51)

文章存档

2018年(3)

2017年(22)

2016年(9)

2015年(17)

我的朋友

分类: LINUX

2015-05-11 10:32:52

导语:用了这么久的git,总结了下最基本的搭建迁移。

一、软件下载

Gitolite(Git 服务管理工具)下载: git clone 
Git下载:   
Gitweb下载:   git clone 
Gitweb样式下载:   



二、安装

  1. 创建Git账号
    groupadd git
    useradd -g git -d /DATA/git -s /bin/bashgit (将家目录指向gitolite项目目录)
    ssh-keygen


  2. 安装并初始化Gitolite

    解压并进入clone下来的gitolite
    gitolite/install -to /usr/local/bin/
    gitolite setup -pk $HOME/scott.pub (key要以隐藏文件形式指定,默认初始化在家目录下)
    git clone git@IP:gitolite-admin

  3. 使用yum安装http服务,配置Gitweb访问页面
    在http.conf中添加如下内容:
    ServerName IP
    DocumentRoot /var/www/gitweb
        Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
        AllowOverride All
        order allow,deny
        Allow from all
        AddHandler cgi-script cgi
        DirectoryIndex gitweb.cgi
    ErrorLog logs/gitweb-error_log
    CustomLog logs/gitweb-access_log common
    并修改启动用户为git
    (nginx的没搞出来,官方给的例子是apache的)
  4. 安装Gitweb
    解压并进入clone下来的Gitweb,使用下面命令安装项目
    cd git/ ; make GITWEB_PROJECTROOT="/opt/git" prefix=/usr gitweb ; cp -Rf gitweb /var/www/

  5. Gitweb样式优化
    解压进入clone下来的gitweb-theme
    修改setup文件,修改target目录至Gtiweb项目目录
    最后执行脚本安装:./setup -vi –install

  6. 启动Git://协议,否则只能使用git@方式操作项目
    git daemon --reuseaddr --base-path=/home/git

至此安装完成。


三、迁移

  1. 进入Gitolite初始化后的目录gitolite-admin内,将老项目下的config和keydir内文件全部拷贝过来。 
  2. git push后 client就有权限做操作了。 
  3. 将原有服务repositories目录打包拷贝至git家目录下。 
  4. 替换gitolite-admin.git目录。

四、Git server 一些特殊配置

   master分支写权限限制。

下面是具体配置片段:

repo ad/berry/.+$
C = @ad
- refs/heads/master =                 //通过‘-’ 去掉其他组员对master分支的权限。更多权限要去参考Gitolite官方文档。
RW+CD = @ad
R = @all

阅读(3048) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:shell批量远程命令执行

给主人留下些什么吧!~~