1. 如何访问Windows的磁符
cd /c
cd /d
2. 命令行补齐tab和忽略文件大小写
msysGit缺省已经安装了Git的命令补齐功能,并且在对文件名命令补齐时忽略大小写。这是因为msysGit已经在安装目录下配置文件/etc/inputrc中包含了下列的设置:
set completion-ignore-case on
3. 中文录入问题
修改配置文件/etc/inputrc,增加或修改相关配置如下:
# disable/enable 8bit input
set meta-flag on
set input-meta on
set output-meta on
set convert-meta off
4. vim
在 git bash中有vim
5. 换行符问题:autocrlf 和 safecrlf
Windows(\r\n)、Linux(\n)和MacOS(\r)三个主流系统的换行符各不相同,这样在跨平台合作的时候就容易出现换行符的问题。
Git提供了 autocrlf 和 safecrlf 两个参数来解决这个问题。但这两个参数如果没用好,就会影响开发。
例如,出现这种情况:
A和B两个开发人员,A使用LF(\n)做换行符,B使用CRLF(\r\n)做换行符,且都没有开启 autocrlf 参数,那么A在迁出B的文件,并使用自己的编辑器打开之后就会发现,虽然没有对文件做任何修改,但它的状态是modified。这是由于A的编辑器自动将B的文件中的所有换行符替换成了(LF),这与版本库中的(CRLF)不同。
# 签出时将换行符转换成CRLF,签入时转换回 LF。
git config --global core.autocrlf true
#签出时不转换换行符,签入时转换回 LF
git config --global core.autocrlf input
#签出签入均不转换
git config --global core.autocrlf false
建议是在无论在什么系统下编程,都把所有人的编辑器的换行符模式设置成Unix格式,然后把autocrlf设置成false,这样一劳永逸。
毕竟除了Windows记事本这类软件外,已经很少有文本编辑器不支持换行符设置了.。
在一个文件中既包含windows风格的换行符也包含unix风格换行符,那么 safecrlf 就可以发挥作用了:
# 拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
# 允许提交包含混合换行符的文件
git config --global core.safecrlf false
# 提交包含混合换行符的文件时候给出警示
git config --global core.safecrlf warn
使用git config --get core.autocrlf
查看状态
6. 不使用notepad
在windows下使用notepad书写的内容在vim下显示结果:英文能正常显示,而中文则出现乱码,所以一定不要用notepad书写,sublime text书写的都能正常显示。
7. 文件的标题用英文
使用中文的话,在git status的条件下出现非中文(应该是16进制)的标题,git add仍用中文文件名,麻烦,还不如都是用英文作为文件名。
8. git add中文乱码问题
git add添加要提交的文件的时候,如果文件名是中文,会显示形如274\232\350\256\256\346\200\273\347\273\223.png的乱码。
解决方案:
在bash提示符下输入:
git config –global core.quotepath false
ore.quotepath设为false的话,就不会对0×80以上的字符进行quote。中文显示正常。