【Git】SourceTree引发的换行符问题

工作中,同时使用Git for windows和SourceTree,SourceTree主要用来看日志,分支和文件改动这些,还是挺方便的。

其中,SourceTree有个挺好用的功能就是一个文件的改动,会按照改动区域进行分块组织列出,这样我们可以对某个块进行提交和丢弃(不知道用Git命令是否也能实现这种功能?),这是一个很不错的功能,实践中也比较常用。

但是,今天遇到一个问题,把文件的某个块改动丢弃之后,发现整个文件都显示被改动了,仔细一看,文件内容其实还是之前的内容,一下反应过来,应该是换行符之类的空白字符改动所致。

用BeyondCompare一对比,果然,文件整个被从Windows的换行符改成了Unix的换行符,所以显示文件被全部改动,但是代码又没发生变化。
用其他文本编辑器把文件全部转回Windows的换行符,果然,一切恢复正常。

这应该是Source Tree的一个bug,因为找遍了Source Tree的设置项,也没看到和换行符相关的一些设置,这里记录下,看来后续使用Source Tree的丢弃功能的时候要小心些。

你可能感兴趣的:(【Git】SourceTree引发的换行符问题)