当git add .遇上换行符问题
来源:互联网 发布:圣艾尔摩之火 知乎 编辑:程序博客网 时间:2024/06/05 04:34
新建版本库的时候遇上了
The file will have its original line endings in your working directoryLF will be replaced by CRLF in ....
这样的警告。
查了一下网上的说法,原因总的来说是不同平台源代码换行符不一致和是git工具core.autocrlf属性的设置造成问题。而看的抄来抄去的说法总是在文字上有类似的歧义以及我总感觉是有被省略掉没说的话,所以按我自己的理解的(如果没有理解错的话),用自己能懂的文字记录一下:
如果是在Windows系统上,默认的或自己设置为true的情况,Git可以在你提交时自动地把行结束符CRLF转换成LF(前提是因为你的代码是采用windows换行符,而提交到库的需要是LF。这样说是不排除你从别处拷贝的代码本身就是LF),而在检出代码时再把LF转换成CRLF(转换成windows标准):
git config --global core.autocrlf true
Linux因为本身使用LF作为行结束符,因此如果库里代码本身为LF那你不需要Git在检出文件时进行自动的转换。但是如果在Linux上提交的文件为CRLF格式(原因同上为什么windows上会提交LF格式的文件)为了保证库里的代码始终为LF就需要把core.autocrlf设置成input来告诉Git在提交时把CRLF转换成LF,而检出时不转换(LF仍为LF)
git config --global core.autocrlf input
前面是建立在库里的代码必须保持LF格式
如果项目都是运行在Windows上的,可以设置false取消此功能。就是库和所有本地都是CRLF格式。
git config --global core.autocrlf false
0 0
- 当git add .遇上换行符问题
- 当git遇上eclipse
- 当Myelipse遇上Git(旺旺篇)
- Git处理换行符问题
- Eclipse用法和技巧二十四:当git遇上eclipse
- 当友元遇上运算符重载
- Git 换行符自动转换问题
- git 换行符问题,统一linux风格
- git windows下换行符问题
- 内核中的死锁问题--当UHCI遇上OHCI
- 内核中的死锁问题--当UHCI遇上OHCI
- 百年一遇的奇怪问题:当IE遇上.NET Framework 4.5
- 当RPM包安装遇上“依赖性”问题时的解决办法
- 内核中的死锁问题--当UHCI遇上OHCI .
- 当RPM包安装遇上“依赖性”问题时的解决办法
- Git 换行符自动转换问题,Git中的AutoCRLF与SafeCRLF换行符问题
- 当管理者遇上技术
- 当Hibernate遇上Spring
- RMAN-06470
- SQL Server Stuff的用法,将一列的多行内容拼接成一行
- ANDROID自定义输入法-自定义键盘
- 如何科学地引用第三方 Swift 库
- Android学习之DragEvent
- 当git add .遇上换行符问题
- Android Studio 之SVN
- JDK DualPivotQuicksort 源码解析
- pyplot.annatate(s,xy, xytext=None, xycoords=’data’,textcoords=’data’, arrowprops=None, **kwargs)参数分析
- Apriori算法
- java第十五节-泛型
- java给iphone应用实现推送
- bufferWriter,outputStreamWriter,FileoutputStream
- Codeforces Round #338 (Div. 2) B. Longtail Hedgehog