zoukankan      html  css  js  c++  java
  • CRLF与LF解析

    window和mac的同学合作开发项目,会出现git提交/拉取时换行符不一致导致,提示 "the text is identical, but the files do not match, newlines”等字样,会出现很多文件发生更改,下面说说换行符引起的这个问题.

    CRLF

    Carriage-Return Line-Feed的缩写,回车换行的意思

    • CR:Carriage Return,对应ASCII 13中转义字符 ,表示回车
    • LF:Linefeed,对应ASCII 10中转义字符 ,表示换行
    • CRLF:Carriage Return & Linefeed, ,表示回车并换行

    (ASCII码表里也有用newline, nl表示换行的),据传说,CR、LF最原始的还要追踪到最早到机械打字机时代,CR回到同一行的纸张最左侧的意思,LF代表换一行,将纸张上一一行,两个组合可不就是换行.

     

    windnow unix mac等平台换行符不同: 

     

     

     

    可以通过git全局设置修改使用的换行符问题,来支持跨平台合作开发项目(window和mac):

    1> AutoCRLF

    #提交时转换为LF,检出时转换为CRLF

    git config --global core.autocrlf true   

     

    #提交时转换为LF,检出时不转换

    git config --global core.autocrlf input   

     

    #提交检出均不转换

    git config --global core.autocrlf false

     

    2>SafeCRLF

    #拒绝提交包含混合换行符的文件

    git config --global core.safecrlf true   

     

    #允许提交包含混合换行符的文件

    git config --global core.safecrlf false   

     

    #提交包含混合换行符的文件时给出警告

    git config --global core.safecrlf warn

  • 相关阅读:
    ETCD集群部署 和flanne网络插件通信原理介绍
    prometheus02 nodeexporter部署及使用
    docker容器的存储资源(volume)
    ActionScript 3.0 事件机制小结
    ActionScript 3.0 装饰器模式实例
    固定头和底,中间部分自适应布局
    ActionScript 3.0 MVC模式小实例
    A*算法的Actionscript3.0实例
    [Database]sql server 2008 不允许保存更改,您所做的更改要求删除并重新创建以下表 的解决办法
    在phpstorm中svn的使用
  • 原文地址:https://www.cnblogs.com/yiyi17/p/10769681.html
Copyright © 2011-2022 走看看