环境:centOS7
背景:公司代码仓库迁移,因而配置的jenkins自动打包git地址也要跟着变化。
问题描述:git clone http xxxx.git后报错:
fatal: repository 'xxxx' not found
先说解决办法:在hosts文件中把新的仓库所在机器host配置上就可以了
nono /etc/hosts
然后是问题的解决过程:
出现这个错误,意思是说找不到仓库地址
很奇怪会遇到这个问题,怀疑是地址不对,所以在其它机器(ubuntu/MAC)上试了git clone命令,结果正常克隆的。
也不是账号权限的问题
试了网上找的各种办法
第1种:
git remote set-url origin https://xxx@xxx/xxx/new_directory.git
结果:
[root@67 .ssh]# git remote set-url origin http://gitlab.xxxd.git
fatal: 没有此远程 'origin'
第2种:
git init
第3种:
配置ssh方式的,结果又说权限不对
很蒙圈,因为以前都是这么做的,并没有报过错。
于是问一下配管,她也是很蒙,但我们交谈的过程中,(与人交流往往是解决问题的开始)
她知道我配置了host,说用http方式克隆代码无须配置host,
我说如果不配置host,会无法解析域名
然后我给她看了我的host文件,她一眼看到host地址不对,于是报着试一试的心态,改了正确的host地址,就可以用git clone httpxxx的方式克隆代码了
总结:
1.我很奇怪为何在其它电脑上使用git clone http方式clone代码无须配置host,而在centOS就必须这样做,难道是centOS安全级别很高吗?
2.此问题是我掉到了自己的思维陷阱中:血淋淋的代价:3小时,思维陷阱是:以前都是这么配置的,没有问题啊?
以前适用的经验,随着环境的变化,不一定会再适用的,切勿用以前的经验恒量现在在做的事。否则代价就是会花更多时间来跳出自己的思维陷阱。
最后把我很喜欢的leader的批示放上来: