问题描述
今天打开IDE的时候发现所有项目文件都变成未提交了。刚开始没太在意,直接开始写代码提交了。
push到远程分支的时候,控制台报错:
Bad owner or permissions on xxx/.ssh/ssh_config
致命错误:无法读取远程仓库。

想起来昨天在sftp上传文件的时候,一直提示没有权限,脑袋一热,用 chmod -R 755 递归地把我根目录下的所有文件权限给改了(令人费解的操作。。。)
解决方式
更改权限:
# 更改ssh文件目录的权限
chmod 700 ~/.ssh
# 更改config文件的权限
chmod 600 ~/.ssh/*
这时候已经可以push了,但是会把所有文件都push到远端,这个我当时没注意怎么解决的。我是push到远端之后才发现的,后来用 git revert HEAD 把远端最近的commit回退了。
总结
文件权限并不是设置的越高越好,还是要分情况的。
- 共享文件:
644
- 私有文件:
600
- 公共可执行文件:
755
- 私有可执行文件:
700
参考:https://blog.csdn.net/qq_44421043/article/details/140966945