Go unkown reversion问题解决

1、出现问题

在运行本地go的main方法时出现了 "go gitlab.**** reading gitlab.****** at reversion v****:unkown reversion v******"
Go unkown reversion问题解决

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

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

2、是否git版本过低

在控制台输入 git version命令查看git版本
Go unkown reversion问题解决
正常来说2.21以上的版本都是没有问题的

3、go get获取方式替换

我们在idea控制台输入:git config --global url."[email protected]:".insteadOf "https://github.com/",注意这边的格式是:
git config --global url.“替换的地址”.insteadof “被替换的地址”
我们可以在C:\Users\admin.gitconfig 中看到我们替换的内容
Go unkown reversion问题解决

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

4、通过**登陆

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

1、生成秘钥

1、打开git shell

在我们的git工程目录下(其他目录也可以),右击空白处,选择git Bash Here
Go unkown reversion问题解决
打开git shell面板:
Go unkown reversion问题解决

2、生成私钥和公钥

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

3、在gitLab中输入SSH key

id_rsa.pub中的内容复制到Key下面的文本框,title任意或者他会自动生成。

Go unkown reversion问题解决

4、下载putty

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

Go unkown reversion问题解决

5、使用putty转换私钥

打开puttygen.exe
Go unkown reversion问题解决
通过puttygenload 加载我们刚才生成的私钥文件id_rsa,然后点击save private key
Go unkown reversion问题解决

生成的文件命名后缀为**.ppk**
Go unkown reversion问题解决

6、指定使用**

点击同目录下的pagement.exe,选择add key把我们刚才的ppk文件添加进来即可
Go unkown reversion问题解决

2、修改git为SSH方式

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

1、查看git下载地址信息

在idea控制台输入:** git config -l ** 查看,如果出现https开头的就是https方式
Go unkown reversion问题解决

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
Go unkown reversion问题解决

而后输入命令: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-****** -p。具体操作如下
Go unkown reversion问题解决