我修改了我.gitconfig的方式,在执行时我有一些颜色git diff:
$ cat .gitconfig
[color]
ui = true
Run Code Online (Sandbox Code Playgroud)
我正在使用ubuntu机器,我使用VIM编辑了一些代码.编辑文件后执行git diff一次,一次没有ui=true.
问题:在第一种情况下,我有^M字符和编辑行的结尾.然而,转弯时,我没有看到那些color.ui或看时vim,cat,more...在操纵文件.
Xav*_* T. 15
这可能是编码问题.'git diff'命令正在执行Vim,认为文件格式是Dos.
当您使用任何其他命令时,它被正确识别为Unix文件.
你可以试试:
:set fileformat=unix
在你的git diff窗口?
我不确定这是根本原因,因为我没有看到与该ui选项的链接.
这个问题是通过设置解决了我core.whitespace来cr-at-eol
将行尾的回车符视为行终止符的一部分(git-config 文档)
这可以添加到每个项目或全局 git 配置文件中,如下所示:
[core]
whitespace = cr-at-eol
Run Code Online (Sandbox Code Playgroud)
这解决了由于另一个非行尾更改而在差异中隐藏行尾的 ^M 问题。目的不是忽略唯一区别是行尾的更改。我在带有core.autocrlf= 的Windows 上true,因此预计行结束不匹配。
我唯一的警告是,我不知道这是否会影响 git 是否会在 EOL 中标记人们可能想要提交的真正更改,但也许 autocrlf=true 永远不会出现这种情况。
| 归档时间: |
|
| 查看次数: |
13639 次 |
| 最近记录: |