QPing's blog

迁移代码后intellij无法pull和push代码的问题

最近公司代码库迁移了,从原来的github迁移到自己的服务器上。将原来的origin地址rename后增加了新的git地址。

cd com-services
git remote rename origin old-origin
git remote add origin git@new.company.site:group/com-services.git

然后就出现了一个问题:无法fetch、pull还有push。

1、 第一波问题:ssh代理问题

ssh_key之前已经配置过,所以肯定不是验证的问题。想到原来地址是用的http协议,现在改为了ssh协议,怀疑是ssh的问题。

使用命令 ssh -vvv git@github.com可以看到git通过ssh连接时的debug信息。

$ ssh -vvv git@github.com
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: /etc/ssh/ssh_config line 51: Applying options for github.com
debug1: Executing proxy command: exec connect-proxy -H 127.0.0.1:1086 github.com 22 #设置代
debug1: identity file /Users/qping/.ssh/id_rsa type 0
debug1: key_load_public: No such file or directory
debug1: identity file /Users/qping/.ssh/id_rsa-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.6
debug1: permanently_drop_suid: 502
/bin/bash: line 0: exec: connect-proxy: not found
ssh_exchange_identification: Connection closed by remote host

可以看到提示connect-proxy命令找不到,原来很久之前设置过一次ssh代理,当时就改错了,但没有发现这个错误。

sudo vim /etc/ssh/ssh_config

把文件最后的

Host github.com *.github.com
ProxyCommand connect-proxy -H 127.0.0.1:1086 %h %p #设置代理
IdentityFile ~/.ssh/id_rsa
User git

改为

Host github.com *.github.com
ProxyCommand nc -v -x 127.0.0.1:1086 %h %p #设置代理
IdentityFile ~/.ssh/id_rsa
User git

重新执行:ssh -vvv git@github.com,这次出现了更多的debug信息,最后提示成功验证了。

Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.

2、 第二波问题:intellij ssh执行问题

再去intellij中试了下,还是不成功,明明可以用命令行更新与提交,但intellij中提交时等了很长时间,报出一个错误。

Could not read from remote repository

怀疑是intellij使用了内嵌的ssh,和命令行中执行的ssh 是不一样的。果然有个配置 SSH executable,将build-in改为Native后。就可以使用git clone git@github.com:qingcode/test.git了,也可以commit与push。


3、 第三波问题:公司代理没开

在github上测试下载和提交代码都成功了。然后我去试了下公司的代码push,intellij中push很久之后,还是报错:

Could not read from remote repository

原来是之前刚刚试验了重启大法,电脑重启后公司vpn没开,连不上公司Git服务器导致的。



以下评论区域 0 Comments


  • 昵称:
  • 邮箱:
  • 内容: