zoukankan      html  css  js  c++  java
  • warning: LF will be replaced by CRLF in test.txt.

    1.问题

    git在执行git add命令时出现以下警告:

    warning: LF will be replaced by CRLF in test1.txt. The file will have its original line endings in working directory

    2.原因

    因为Git的换行符检查功能。LF是linux下的换行符,而CRLF是enter + 换行。

    Git提供了一个换行符检查功能(core.safecrlf),可以在提交时检查文件是否混用了不同风格的换行符。这个功能的选项如下:

    • false - 不做任何检查
    • warn - 在提交时检查并警告
    • true - 在提交时检查,如果发现混用则拒绝提交

    建议使用最严格的 true 选项。

    假如你正在Windows上写程序,又或者你正在和其他人合作,他们在Windows上编程,而你却在其他系统上,在这些情况下,你可能会遇到行尾结束符问题。这是因为Windows使用回车和换行两个字符来结束一行,而Mac和Linux只使用换行一个字符。虽然这是小问题,但它会极大地扰乱跨平台协作。

    Git可以在你提交时自动地把行结束符CRLF转换成LF,而在签出代码时把LF转换成CRLF。用core.autocrlf来打开此项功能,如果是在Windows系统上,把它设置成true,这样当签出代码时,LF会被转换成CRLF:

    $ git config --global core.autocrlf true
    • 1

    Linux或Mac系统使用LF作为行结束符,因此你不想 Git 在签出文件时进行自动的转换;当一个以CRLF为行结束符的文件不小心被引入时你肯定想进行修正,把core.autocrlf设置成input来告诉 Git 在提交时把CRLF转换成LF,签出时不转换:

    $ git config --global core.autocrlf input
    • 1

    这样会在Windows系统上的签出文件中保留CRLF,会在Mac和Linux系统上,包括仓库中保留LF。

    如果你是Windows程序员,且正在开发仅运行在Windows上的项目,可以设置false取消此功能,把回车符记录在库中:

    $ git config --global core.autocrlf false

  • 相关阅读:
    python threading acquire release
    .net支付宝调试
    C#获取微信openid
    KindeEditor图片上传插件用法
    .net Repeater内部的按钮事件代码demo(Repeater内button的删除事件)
    .net 执行页面跳转弹窗提示,刷新代码
    .net验证控件
    上传图片
    数据库写入时间
    数据库读取
  • 原文地址:https://www.cnblogs.com/wei1/p/9582103.html
Copyright © 2011-2022 走看看