搭建git服务器,并解决github desktop 访问私有仓库报错

创建GIT服务器

首先在服务器上安装git工具,不同的Linux操作系统安装命令不同,Ubuntu使用apt install git,Centos使用yum install git。

然后创建git用户的密码,和git组。目的是为了和其它用户隔离。

  1. useradd git
  2. passwd git
  3. 切换为git账户登录操作:su git,输入刚才设置的git的密码,切换为git账户登录
  4. 创建git的工作目录,路径根据个人需求。由于创建完git账户后,在home下就会有个git的文件夹,并且通常home目录的空间也会比较大,所以我将git的仓库都放在/home/git下
  5. 新建私有仓库:
    1. cd /home/git
    2. git init --bare test.git  test为你需要创建的仓库的名称。

至此,已经在服务器上创建了私有仓库,在客户端就可以通过git clone取代码了。

 

客户端访问仓库

  1. 取仓库代码:git clone git@serverIP:git_repository_path。

例如:git clone git@10.113.30.60:/home/git/test.git

  1. 添加文件,并推送至仓库
    1. cd至刚才clone的代码路径,即test目录下
    2. 添加需要增加的文件。复制,新建均可以
    3. git add filename
    4. git commit –m “something you want say”
    5. git push origin master 将代码Push到master

至此,仓库中已有了base的代码文件。

无密码访问git仓库

首先修改git所在服务器的ssh守护进程的启动配置文件,修改如下几项配置项:

  1. 切换至root账户,vim /etc/ssh/sshd_config
  2. RSAAuthentication yes

       PubkeyAuthentication yes

       AuthorizedKeysFile .ssh/authorized_keys

       StricModes no

       没有的配置项就新增

  1. 在Linux客户端执行ssh-keygen -t rsa,然后一路回车,最终会创建ssh认证的公钥和私钥。在win下,我安装了git工具,然后在任意文件夹中右键打开git bash,然后执行ssh-keygen -t rsa,然后一路回车,最终会产生WIN下的公钥和私钥。

以上操作都会提示文件生成的位置。

  1. 切换至git用户,然后cd到git工作目录下,cd /home/git
  2. mkdir .ssh
  3. chmod -R 700 .ssh
  4. cd .ssh
  5. touch authorized_keys
  6. 将第3步生成的ssh的公钥即id_rsa.pub中的公钥内容通过
    1. 上传文件至/home/git目录下,然后cat id_rsa.pub >> authorized_keys,追加至认证文件的末尾,注意文件的权限问题
    2. 直接编辑authorized_keys文件,将id_rsa.pub文件中的内容追加至文件的末尾

至此,客户端就可以不需要密码访问git仓库了。

测试:git clone git@10.113.30.60:/home/git/test.git 将会直接Pull文件,不再需要输入密码,如果还需要,则说明某个地方配置错误,需要排查原因。Pull过程中,如果提示输入yes或no,则输入yes,如下图:

 

同样,在win下使用git bash也需要做同样的测试。在win下测试通过clone不需要密码后,就可以使用github desktop来clone本地私有仓库了。

    GitHub desktopàfileàClone a repositoryàURLàRepository URL or Github username and repositoryàgit@10.113.30.60:/home/git/test.gitàLocal pathà选择clone的本地目录àcloneà完成

注意,在使用GitHub Desktop clone私有仓库时,一定要先在本地通过git bash clone确定不需要数据密码后,再使用GitHub Desktop就基本没什么问题,否则会一直提示认证失败。

设置完ssh免密后,Win下clone,会提示如下信息,选择yes

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值