目录

  • 1. 问题现象
  • 2. 解决方案

1. 问题现象

git diff 时发现明明只改动了几行代码, 但是对比时却显示全部文档都修改过了, 而且到处都是^M字符, 导致看不出修改点, 达不到git diff的效果.

2. 解决方案

  • 分析原因
    ^M根据ASCII码表, 查出是\r, 即windows换行符\r\n的前一半. 猜测可能是文件编写/查看操作系统不同导致. 于是用od -tc 文件 查看文件, 确实是\r换行符导致的.

  • 解决方案

搜了一下, 千遍一律的解决方案是加一个配置, 忽略换行符的差异:

git config --global core.whitespace cr-at-eol

但是设置后并没有效果(可能和git版本有关)

我想了想即然是\r的问题, 那把\r去掉不久行了吗
用UE编辑器根据正则$\n替换成\n后, 换行符变成了\n

把内容贴到idea后, 发现换行符还是\r, 这个时候发现可能是idea设置换行符的问题. 遂百度了下idea换行符设置.

  1. idea全局换行符

file -> setting -> code style (System-Dependent 就是根据当前操作系统进行设置)

  1. 单个文件修改换行符

最后发现, 内容里的^M没有了. git diff结果也正常了.

解决git diff时的^M问题相关推荐

  1. 去除(还原)git diff 时出现的 ^M

    去除git diff 时出现的 ^M(只是git不再提醒了,内容并未变化) git config --global core.whitespace cr-at-eol 还原git diff 时出现的 ...

  2. 解决git clone时提示内存不足问题

    解决git clone时提示内存不足问题 在使用git clone的时候经常会遇到内存不足的情况,尤其是在克隆一些比较庞大的仓库的时候,像Linux代码这些. remote: Counting obj ...

  3. git解决git apply时遇到trailing whitespace问题

    git解决git apply时遇到trailing whitespace问题 参考文章: (1)git解决git apply时遇到trailing whitespace问题 (2)https://ww ...

  4. 解决git pull时出现的几个问题

    第1个问题: 解决GIT代码仓库不同步 今天在执行git pull时出现: 解决方法: 执行git checkout -f,然后再执行git pull重新checkout 再执行git pull时就可 ...

  5. 解决git commit时 gpg: skipped 35F5FFB2: secret key not available问题

    转自:https://www.cnblogs.com/gdouzz/p/7124468.html commit代码时报错 gpg: skipped "35F5FFB2": secr ...

  6. 解决git clone时出现Failed to connect to github.com port 443: Timed out的问题

    1.参考链接 2.打开git,然后输入两行命令,再进行git clone,成功! git config --global --unset http.proxygit config --global - ...

  7. git点击pull后没有同步_关于git pull时出现的问题及解决反思

    前因 在前面由于已经git过一次,按照娄老师的要求,代码一个一个commit,所以删掉之前的git仓库(用la查看,使用rm -rf .git删除).但远程origin已经存在,所以执行git rem ...

  8. git diff:Linux使用meld做git的diff工具

    使用场景:当更新代码发生冲突时,需要解决冲突.使用meld工具可以提高效率 ==================     Linux云桌面:设置git diff 的比较工具为 meld    ==== ...

  9. Linux 中去除 vi/vim 和 git diff 中的 ^M 问题解决办法

    去除 vi/vim 和 git diff 中的 ^M 问题解决办法 问题现象 初步分析 进一步查看 问题解决 Source Insight dos2unix Nodpad++ Vim sed 命令 综 ...

最新文章

  1. 搭建OpenStack中的glance报错 403 503
  2. 微信小程序wx.request内调用setData方法
  3. java web 项目在tomcat上显示空白页的解决
  4. 通俗的说下浏览器的渲染过程
  5. 用inno做setup遇到的一些问题及解决方法
  6. CF1406E:Deleting Numbers(构造、根号分块)
  7. 拼图游戏C语言课设实验报告,C语言拼图游戏实验报告.doc
  8. cin gt gt a用c语言怎么写写,cin、cin.get()、cin.getline()、getline()、gets()等函数的用法...
  9. securecrt 多窗口运行相同命令
  10. Python使用hashlib模块生成给定文本数据的签名摘要信息(包括各种哈希函数)
  11. WIN10不显示sql2005服务器,win10系统安装sql2005 sql服务无法启动的解决方法
  12. ListView优化方案和原理,你都知道了嘛?
  13. AVR单片机(ATmega128)单片机运算乘除法大约所需时间
  14. C++:round函数用法
  15. python基础教程: for 循环用法
  16. 【国内chatgpt使用方法合集】(5月22日已更新)
  17. 【NLP开发】Python实现中文、英文分词
  18. 为啥中国移动免费宽带突然不香了, 背后的猫腻,你知道吗?
  19. python-科研绘图系列(2)-等高线图
  20. Windows7重装系统后文件夹权限的混乱

热门文章

  1. 控制系统的滞后校正matlab,自动控制原理课程设计__用MATLAB进行控制系统的滞后校正设计...
  2. 读阮一峰的React 入门实例教程有感
  3. 一个十年苹果脑残粉对iOS的深度吐槽
  4. Ubuntu18.04搭建nginx rtmp服务器
  5. 我是一个Dubbo数据包...
  6. 记一次添加桌面二次元人物的经历
  7. 泉州师范学院数学与计算机,泉州师范学院数学与计算机科学学院简介
  8. FreeRTOS的任务详解
  9. 【NOI模拟赛】最小生成树(kruskal算法,线段树合并)
  10. nimble 2 蓝牙开发API