当我克隆远程GitLab项目时,出现以下错误:
NSString* foofile = [destinationPath stringByAppendingPathComponent:@"/tiles/17/70759/49235.png"]; //as an example
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:foofile];
我尝试重新安装TortoiseGit,但这并没有解决问题。
答案 0 :(得分:43)
用于SSH工具检测的Git(> = 2.16.0)的内部行为已更改,TortoiseGitPlink
或ssh
兼容后,plink
不再被检测到。
这仅影响SSH URL是否包含端口,或者您是否已将Git配置为使用协议版本2.现在,您需要将环境变量GIT_SSH_VARIANT
设置为ssh
或将其配置为使用git config --global ssh.variant ssh
进行Git设置。
在下一版本的TortoiseGit 2.5.7中,当TortoiseGit调用TortoiseGitPLink时,这将自动完成(参见https://tortoisegit.org/issue/3139)。如果从CLI使用TortoiseGitPLink
,则仍需要设置。
更新(TLDR):
TortoiseGitPLink
,请在CLI上发出git config --global ssh.variant ssh
或将环境变量GIT_SSH_VARIANT
设置为ssh
。答案 1 :(得分:19)
如果您使用的是Windows版本的git,请尝试以下方法:
git config --global ssh.variant ssh
对于那些不想大量混淆环境变量的人来说,这是一个更好的选择。
答案 2 :(得分:9)
将环境变量GIT_SSH_VARIANT设置为ssh。这将解决问题。
答案 3 :(得分:7)
由
修正export GIT_SSH_VARIANT=ssh