自定义-Git-配置-Git git的配置参数保存在三个层级上,类似于css样式,高级的最接近使用的层级优先级最高。
层级 | 位置与信息 |
---|---|
git –system config | 首先会查找 /etc/gitconfig 文件,该文件含有系统里每位用户及他们所拥有的仓库的配置值。 如果你传递 –system 选项给 git config,它就会读写该文件。 |
git –global config | 接下来 Git 会查找每个用户的 ~/.gitconfig 文件(或者 ~/.config/git/config 文件)。 你可以传递 –global 选项让 Git 读写该文件。 |
git config | 最后 Git 会查找你正在操作的版本库所对应的 Git 目录下的配置文件(.git/config)。 这个文件中的值只对该版本库有效。 |
以上三个层次中每层的配置(系统、全局、本地)都会覆盖掉上一层次的配置,所以 .git/config 中的值会覆盖掉 /etc/gitconfig 中所对应的值。 |
[root@centos76 ]# ls /test/ #如此处实际名称为index - 副本.html的文件显示情况。 assets/ README.txt css/ index - ▒▒▒▒.html slider.php favicon.ico index - ▒▒▒▒.php
这是系统层面的问题(比如常见的中文文件名从windows到linux时的乱码),需要用convmv转换。另外,减少使用中文文件名。因为即使你能注意到,在部署的过程中不同能力的实施并不一定注意到或处理好这个问题。
yum install convmv convmv -f gbk -t utf-8 -r /home/wwwroot #仅测试验证结果预览,如果还是乱码,请修改参数,如果还是乱码,那一般没问题不是这种了。 convmv -f gbk -t utf-8 -r /home/wwwroot --notest #真正执行。 ls /test #恢复正常。 assets/ README.txt css/ index - 副本.html js favicon.ico index - 副本.php README.txt
git status #在查看修改历史时,对于中文文件名,git log和gitk都会出现类似的乱码: # "video/pscc/layer-v3.1.1/\346\233\264\346\226\260\346\227\245\345\277\227.txt" # "\347\233\256\345\275\225\347\273\223\346\236\204.xlsx" git config core.quotepath false #保存在.git/config # core.quotepath设为false的话,就不会对0x80以上的字符进行quote。中文显示正常 git status # video/pscc/layer-v3.1.1/更新日志.txt # 目录结构.xlsx git add -A #添加重新提交git