问题背景
在某项目中,执行git pull时,报错:error: unable to create symlink vendor/bin/jp.php: File name too long。
系统环境是 macos 10.15.7,起因是同事php composer安装了alibabacloud引起的问题。
由于我们的vendor目录是放在git版本控制之中,就导致了此问题的产生。
处理过程
此时console显示:⇣30 ?18 【 此描述是服务器上有30个文件更新,本地有18个文件未加入版本控制】
然后执行:git pull,报下述错误:
The following untracked working tree files would be overwritten by merge
然后执行:git clean -fd 删除所有未跟踪文件(含目录)|| git clean -f 仅删除文件(保留目录)
此时console显示: ⇣30 【 此描述是服务器上有30个文件更新】
接着执行:git pull
此时console显示: ⇣30 !199 ?18 【此描述是服务器上有30个文件更新,本地有199个文件变更,本地有18个文件未加入版本控制】
接着,我手动回滚了一下本地文件,将本地199个文件变更恢复。
此时console显示: ⇣30 ?18
然后执行:git clean -fd 删除所有未跟踪文件(含目录)
此时console显示: ⇣30
最后执行:git config --local core.symlinks false 本项目禁用符号链接
然后再次执行:git pull
问题解决。