【问题标题】:Ruby on Rails, Git and CRLF - nontrivialRuby on Rails、Git 和 CRLF - 不平凡
【发布时间】:2015-02-27 14:37:41
【问题描述】:

我正在学习 Ruby on Rails 并使用 Windows 7。当我尝试将更改提交到 Git 时,我收到 fatal: LF would be replaced by CRLF 消息。

rails generate 似乎使用 LF 而不是 CRLF 生成文件。当然,我可以从

git config --global core.autocrlf true
git config --global core.safecrlf true


git config --global core.autocrlf true
git config --global core.safecrlf warn

但我不喜欢将任何已提交的二进制文件粉碎成碎片的可能性。

我试图避免.gitattributes 的问题,但我的台词像

* text=auto
*.rb text

不要帮忙。

有没有办法让 Rails 生成以 CRLF 结尾的文件?或者有没有办法让 Git 自动转换 .rb.erb 文件,而不是其他文件?

【问题讨论】:

    标签: ruby-on-rails ruby git newline core.autocrlf


    【解决方案1】:

    我不喜欢将任何已提交的二进制文件压缩成 件。

    你确定这是一个真正的问题吗?

    如果您关闭警告 (core.autocrlf true),git 将在您提交时进行调整,您可以继续保持生产力。

    如果您确实有充分的理由不想这样做,那么您将遇到困难,因为我认为没有简单的方法(总是有 some 方法)拥有 Rails生成以 CRLF 结尾的文件,并且根据文件类型让 git 自动转换很奇怪。

    我当然可能是错的,但是您似乎在尝试使用您的工具时有点过分?

    可能有用的参考:git commit creates assets and temporary files for some reason

    如果您真的想要尝试配置 git 以进行这些更改,您可以按照以下回复中的建议查看 git 属性过滤器驱动程序:Can git automatically switch between spaces and tabs?

    对上述解决方案的另一个有用参考:https://stackoverflow.com/a/2354278/1026898

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-23
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 2020-02-01
      • 2012-01-09
      • 2011-05-06
      • 2018-12-23
      相关资源
      最近更新 更多