搭建Git服务器(Ubuntu虚拟机)和windows客户端

         

         

         一直以来用Git都是用的别人的服务器, 比如oschina 和github,  今天因为工作需要在自己的ubuntu上搭建了自己Git 服务器,

以下记录一些步骤和碰到的问题

    

1) 首先需要在ubuntu 虚拟机上安装openssh,

    命令: sudo apt-getinstall openssh-server,安装SSH服务   (本人的ubuntu虚拟机早已安装了openssh拉)。

2) 安装完成以后察看一下ssh服务有没有启动起来, 

     命令: ps –e|grep ssh,  

     如果已经启动了是以下结果,

   root@tqc-dev-env:/# ps -e|grep ssh
      497 ?        00:00:00 sshd
     2113 ?        00:00:00 ssh-agent

    如果没有启动, 可以用命令 

    /etc/init.d/ssh start 或是 service ssh start 

3)配置SSH无密码登陆,首先我们修改主机和ip配置文件:gedit /ect/hosts  即添加:

    192.168.212.141 tqc-dev-env   #此为服务器主机地址和用户名
     192.168.1.8     Administrator/WFJIANG #Windows客户端地址和用户名 

4) 创建git,用户, 用来管理运行git服务

    命令: userdel -r git  删除git用户

    命令: useradd git  创建git用户

    命令:su git 切换到git用户

5) 在windows 客户端上配置无密码SSH登陆

    在windows的git bash上(已经默认你安装了Git-1.9.5-preview20150319.exe),

    使用命令:ssh-keygen –t rsa 生成密钥,在.ssh目录C:\Documents andSettings\Administrator\.ssh下,

    我们可以看到id_rsa和id_rsa.pub文件,id_rsa.pub为公钥,将生成的公钥拷贝到ubuntu服务器上。

    ubuntu服务器上查看/home/git/.ssh目录下是否存在authorized_kesys文件,

    如果没有,可以通过touch authorized_keys创建此文件,如果连.ssh文件夹子也没有,则自己创建。

    Authorized_keys创建完成后,将gitClient_01上拷贝过来的公钥id_rsa.pub的内容追加到authroized_keys中,

    注意是追加到此文件中,可以使用命令cat       /home/git/id_rsa.pub>>/home/git/.ssh/authorized_keys.

6)通过命令 sudo apt-get install git-core,安装git

7)建立git仓库的存储目录,命令例如: mkdir  /home/GitServer/

8) 初始化服务器端仓库 :Git init –-bare /home/git/myRep.git, 初始化化仓库

9) 在windows上,通过git clone命令进行克隆ubuntu虚拟机服务器远程代码仓库,

    Git clone git@tqc-dev-env:/home/git/myRep.git

10) 克隆代码的时候出现

      error: insufficient permission for adding an object to repository database./objects
       fatal: failed to write object
       error: unpack failed: unpack-objectsabnormal exit

     这是由于库的权限的问题 ,Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,

     所以不让用户直接登录到服务器上去改工作区,并且服务 器上的Git仓库通常都以.git结尾。然后,把owner改为git:在git库目录下:

     执行命令: chown -R git:git myRep.git 后即可成功克隆服务器仓库。



 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值