git diff 里面很多^M 是什么东西?

2015-05-05 23:10:25 +08:00
 eeeeeeve

4310 次点击
所在节点    程序员
4 条回复
dalang
2015-05-05 23:39:17 +08:00
caixiexin
2015-05-06 08:22:18 +08:00
windows下很多编辑器的换行符是\r\n 也就是“CRLF”
unix/linux是\n 也就是“LF”
所以windows下保存的文本文件,用linux方式打开就会在行尾多一个\r,最后在vim里看到就是那个“^M”
一般团队开发或者版本控制工具在提交代码的时候都有要求要统一换行符(git貌似有个选项是commit时强制转换成unix换行符)
另外,如果要在vim中替换调"^M",可以用s命令,但是搜索的"^M" 不能手打,而要用v选中复制粘贴出来。或者“%s/\r//g”
sincway
2015-05-06 09:14:34 +08:00
@caixiexin ^M 可以手打的。先按住 Ctrl+V 再输入 Ctrl+M 即可
caixiexin
2015-05-06 11:15:16 +08:00
@sincway 原来如此:) 3ks

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/188748

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX