【发布时间】:2015-01-24 19:00:49
【问题描述】:
我一直在使用 git 做一个项目。我总是使用括号,通常在 Ubuntu 上,但有时也在 Windows 上。关键是现在,在 Ubuntu 上,当我尝试向我的项目提交一些更改时,我看到它在每个修改行的末尾添加了 ^M。
如果我没记错的话,这是 Windows 的行尾字符。这就是为什么它让我感到困惑:为什么 Ubuntu 会添加它?还有最重要的问题,我能做些什么来摆脱它们?
我尝试了不同的文本编辑器,但没有运气。
【问题讨论】:
-
我猜,这是你的文本编辑器。修复它
-
许多 Unix 上的文本编辑器会在您编辑已经包含 Windows 样式结尾的文件时添加
^M(我认为这是正确的做法)。您是否正在编辑最初在 Windows 上创建的文件? -
@Chris 有可能,是的。但是,关于如何避免文本编辑器添加 ^M 的任何建议?我搜索了所有选项,但没有找到任何东西......
-
@Aljullu,只需将您的编辑器配置为在所有平台上默认使用 Unix 行尾。现有文件不会(可能)自动转换,但您的编辑器可能会为您执行此操作。如果没有,像
dos2unix这样的工具可以。 -
Linux/UNIX 行尾字符是 LF(
'\n',字符 10)。 Windows 行尾序列是两个字符,CR-LF("\r\n",字符 13 和 10)。 Windows 样式的行尾,当被假定为 UNIX 行尾的东西查看时,在行尾看起来像一个 ^M (CR) 字符; Windows 样式的行尾序列的第二个字符与 UNIX 样式的行尾字符匹配。
标签: git ubuntu character-encoding adobe-brackets