Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1208776
  • 博文数量: 252
  • 博客积分: 5421
  • 博客等级: 大校
  • 技术积分: 2418
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-17 12:59
文章分类

全部博文(252)

文章存档

2017年(3)

2016年(18)

2015年(31)

2014年(18)

2013年(7)

2012年(8)

2011年(12)

2010年(30)

2009年(32)

2008年(57)

2007年(36)

分类: 敏捷开发

2016-11-07 10:27:40

当你通过HTTPS访问Git远程仓库,如果服务器的SSL证书未经过第三方机构签署,那么Git就会报错。这是十分合理的设计,毕竟未知的没有签署过的证书意味着很大安全风险。但是,如果你正好在架设Git服务器,而正式的SSL证书没有签发下来,你为了赶时间生成了自签署的临时证书,怎样才是最便捷的测试手段。

本文记录一种比较好的做法:

第一步,克隆远程仓库时,用env命令设置GIT_SSL_NO_VERIFY环境变量为"ture",并同时调用正常的git clone命令。完整的命令如下:
Bash代码  收藏代码

    export GIT_SSL_NO_VERIFY=true
    git clone git_url/project.g
或者连成一行:

    env GIT_SSL_NO_VERIFY=true  git clone git_url/project.git

第二步,在克隆完毕的仓库中将http.sslVerify设置为"false"。完整的命令如下:
Bash代码  收藏代码

    git config http.sslVerify "false"  

点评:
以上方法应该是Git处理可信任的SSL临时证书很好的方法,第一步使用env命令保证了忽略证书错误是单次行为,不会成为默认的设置。第二次,则把忽略证书错误的设置限定在特定的仓库,避免扩大该设置的适用范围而引起的潜在安全风险。
阅读(645) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~