ubuntu 搭建git服务器

一、所需软件软件安装与配置

         git-core是git版本控制核心软件,安装openssh-server和openssh-client是由于git需要通过ssh协议来在服务器与客户端之间传输文件

 

       配置git账号名和邮箱

 

  安装python的setuptools和gitosis,由于gitosis的安装需要依赖于python的一些工具,所以我们需要先安装python的setuptools。

 

二、创建git管理员账号

    创建git用户

 

三、配置gitosis

  在管理员机器生成秘钥,管理员机器可以是此台服务器别的用户,也可以是别的机器

        

  把生成的id_rsa.pub拷到git账户下,比如  /home/git/,用这个key来初始化git仓库

  

 

    注意:如果出现用户名git不在sudoers文件中,可以修改文件 /etc/sudoers,修改内容如下:

 

      出现如上信息说明gitosis已经初始化成功, 会在/home/git/目录下生成repositories目录,这个就是放在git项目的目录,里面有gitosis-adgitosis.git的仓库,通过gitosis-admin.git仓库来管理一些配置文件的,如用户权限的管理。

      添加权限

   

 

 四、在服务器新建测试仓库

       创建test仓库

   

 

五、使用gitosis管理用户操作项目的权限

      在管理员电脑上做如下操作

      

        clone后,gitosis-admin目录下:

               keydir目录: 存放所有需要访问git服务器的用户的ssh公钥,各个用户按照前面提到的办法生成各自的ssh公钥文件后,把         所有人的ssh公钥文件按名字重新命名一下,然后拷贝到keydir目录下,例如,lisi.pub,  zhangsan.pub ,  若lisi为管理员机器          的ssh key

             gitosis.conf文件,做相应的配置:

     

 

        这个配置文件表达了如下含有:gitosis-admin组成员有ljz,该组对gitosis-admin仓库有读写权限;testgit组有 ljz lisi wanger三个成员,该组对test仓库有读写权限。目前这些配置文件的修改只是在本地,必须推送到远程的git服务器上才能真正生效

       提交并push到Git服务器

       

      

六 初始化测试项目

       现在服务器搭建完毕,并且有一个空的项目test在服务器上。接下来,需要测试一下,空仓库是不能clone的,所以需要某个有写权限的人初始化一个版本。在客户端执行

     

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值