一、phpstorm或者gitbash 命令行拉取代码一直提示没权限
要重新生成下的公钥和私钥
1.备份并删除C:\Users\Administrator\.ssh\下的文件
2.ssh-keygen -t rsa -C "git对应的邮箱"
3.三个回车
4.将public key添加到github上
5.然后再试拉取代码就ok了
二、phpstorm快捷命令执行失败问题:
打开项目目录下的.git文件夹,找到config,[core]中加入一行 sshCommand = "ssh -i %rsa_path% "
或执行命令 git config core.sshCommand "ssh -i %rsa_path% "
三、注意检查git配置文件,有全局配置、系统配置、本地配置文件
四、注意检查git配置源,有系统、全局、当前版本库、实际生效,一般选择实际生效即可
五、git配置文件介绍
system
- 系统级别,一般存放系统设置,作用范围最大
- 一般存放于
[Git安装目录]\mingw64\etc\gitconfig,但是Git不会自动生成这个文件只有通过命令编辑文件后,该文件才会生成,编辑命令git config --system --edit
global
- 全局文件,整个系统用户范围内生效,作用范围比system小
- 配置文件不会自动生成,通过命令
git config --global --edit编辑之后生成,位置默认在C:\Users\Administrator\.gitconfig
local
- 每个仓库的配置文件,作用范围最小,只在本仓库生效
- clone或者init时自动生成,位置在
.git\config
注:既然配置文件有3种,那如果有一个属性,三种配置文件里都有配置,且各不相同,会取哪个属性呢?
答:作用范围越小的优先生效,这不难理解,这样可以为每个仓库每个用户做单独的配置
六、配置命令详解
-
-
加上
--global可以编辑全局配置,其他配置文件以此类推,放在-e或者--edit的左右两侧都可以 -
--edit可简写成-e -
如果不加
--global等参数,默认编辑的是仓库配置文件git config [--global|--local|--system] --edit git config [--global|--local|--system] -e -
例子:
执行编辑全局配置文件的命令后,配置文件会自动打开,git bash 会等待你编辑完配置文件后才会进行下一步的动作,用什么编辑器打开文件则是使用的在你安装Git时选择的编辑器。
-
编辑单个配置
-
打开我的全局配置文件会发现如下的属性:
怎么看配置文件呢?
比如name这个属性,我们想要用git命令编辑的时候,就用user.name这种方式来找到他
编辑单个配置命令如下:
// xxx为要修改的属性,sss为需要配置的内容
git config [--global|--system|--local] xxx \'sss\'
举例:
// 配置全局配置文件中的user.name
git config --global user.name \'leilei\'
查看某个配置:
// xxx为要获取的配置
git config --get [--global|--local|--system] xxx
举例:
重置某个配置
// xxx为要重置的配置
git config --unset [--global|--local|--system] xxx
解决方法:
File-> 选中 Invalidate Caches/Restart ->选中 Invalidate Caches/Restart