Go unkown reversion问题解决

本文介绍了如何解决在运行Go的main方法时遇到的unkown reversion问题,包括检查git版本,用go get替换获取方式,通过SSH密钥登录,修改git为SSH方式,以及去除passPhrase的操作步骤。详细讲述了生成和配置SSH密钥的过程,以及在IDEA中修改git配置的方法。

1、出现问题

在运行本地go的main方法时出现了 "go gitlab.**** reading gitlab.****** at reversion v****:unkown reversion v******"
在这里插入图片描述

查看了网上的说法,大致问题出现在几个地方:

然后我试了上述两个方法都不行,于是试了一下在本地去下载需要的包(公司的私库),结果发现提示的登录账号和我的对不上,于是我就试了通过SSH密钥的方式去登录,结果发现可以下载。

2、是否git版本过低

在控制台输入 git version命令查看git版本
在这里插入图片描述
正常来说2.21以上的版本都是没有问题的

3、go get获取方式替换

我们在idea控制台输入:git config --global url."git@github.com:".insteadOf "https://github.com/",注意这边的格式是:
git config --global url.“替换的地址”.insteadof “被替换的地址”
我们可以在C:\Users\admin.gitconfig 中看到我们替换的内容
在这里插入图片描述

这个替换的地址是我们的工程的地址,把https 换成 git 方式.不要写错地址了
如果还是不行的话就按照下面的方式处理

4、通过密钥登陆

可参考:使用git实现免密操作、TortoiseGit实现SSH免密码操作

1、生成秘钥

1、打开git shell

在我们的git工程目录下(其他目录也可以),右击空白处,选择git Bash Here
在这里插入图片描述
打开git shell面板:
在这里插入图片描述

2、生成私钥和公钥

在git Shell界面中输入ssh-keygen命令,使用默认的生成位置,但是一定要记住输入密码(好像git不输入密码会被锁定掉).,这个密码就是后面要用到的passphrase
在这里插入图片描述
如上提示就是生成成功了。我们可以到C:\Users\admin.ssh目录下查看:
在这里插入图片描述

3、在gitLab中输入SSH key

id_rsa.pub中的内容复制到Key下面的文本框,title任意或者他会自动生成。点击gitlab的头像出现setting可以进入到设置界面
在这里插入图片描述

在这里插入图片描述

4、下载putty

下载地址:下载地址
下载msi文件进行安装

在这里插入图片描述

5、使用putty转换私钥

打开puttygen.exe
在这里插入图片描述
通过puttygenload 加载我们刚才生成的私钥文件id_rsa,然后点击save private key
在这里插入图片描述

生成的文件命名后缀为**.ppk**
在这里插入图片描述

6、指定使用密钥

点击同目录下的pagement.exe,选择add key把我们刚才的ppk文件添加进来即可
在这里插入图片描述

2、修改git为SSH方式

如果项目原来下载下来是通过http的方式下载,那么这边就需要修改成ssh的方式,如果还没有下载就没关系

1、查看git下载地址信息

在idea控制台输入:** git config -l ** 查看,如果出现https开头的就是https方式
在这里插入图片描述

2、移除origin

在idea控制台输入命令:git remote remove origin,移除

3、设置Origin

在idea控制台输入:git remote add origin [SSH地址] ,进行设置,这个时候输入的是SSH地址,不要输错了

4、允许无关历史记录

在idea控制台输入:allow-unrelated-histories,这个时候通常会叫你输入passPhrase,如果我们上面生成ssh key的时候没有设置passPhrase,就会叫你输入密码,我尝试了几次都不会,所以还是使用passPhrase的方式好一点

5、设置分支关联

这边设置分支的话,可以先查看一下remote是什么,一般是orgin。命令是:git remote
在这里插入图片描述

而后输入命令:git branch --set-upstream-to=origin/[分支名] [分支名]
比如我这边输入的就是git branch --set-upstream-to=origin/huangzj_test huangzj_test

然后就可以通过ssh的方式来下载和提交了

3、去除passPhrase

有的时候我们的一些操作需要通过go get来获取git地址,如果需要输入passPhrase的话,这边没有找到对应的命令,所以这边提供一个方式就是把passPhrase去除掉
命令是:ssh-keygen -p。具体操作如下
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

了-凡

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值