gerrit无change id以及macos无法执行scp解决方案,scp: Connection closed
483浏览 • 2024-7-2 •
软件教程
• MA91459
错误:
近期为了做苹果app也是千方百计搞到了mac设备,结果发现提交公司代码时候报错,gerrit提交需要change id,这个id会由gerrit的commit msg hook进行自动生成,而hook的安装是通过scp下载下来的
而执行scp命令时报错:
subsystem request failed on channel 0
scp: Connection closed
原因:
经查阅,这是由于在 Apple 在 Ventura 中提供的 OpenSSH 9.0 中,SCP 协议已被弃用,取而代之的是 SFTP,而我们的gerrit并没有使用sftp,故而报错。
解决方法:
客户端方案:
在scp命令中加一个 -O 即可,大写英文字母o,这将允许使用已弃用的scp协议
服务端方案:
既然是apple调用sftp,只要服务端安装sftp即可,命令如下:
Subsystem sftp internal-sftp
如果您拥有服务器操作权限,这个是更好的方案,可以一劳永逸
未经作者允许,禁止转载
#apple
#macos
#scp
#gerrit
#sftp
19