如何设置Netbeans/Git/Cygwin环境,使其不会因CR和LF差异而阻塞-例如:`\r未找到命令`?

如何设置Netbeans/Git/Cygwin环境,使其不会因CR和LF差异而阻塞-例如:`\r未找到命令`?,git,bash,netbeans,cygwin,newline,Git,Bash,Netbeans,Cygwin,Newline,我在Windows7上使用Netbeans、Git和Cygwin,并且一直在为行结尾的CR和LF差异而争论 2个主要问题是: Git给出了一个“修改”状态,唯一的区别是回购使用LF,而暂存文件具有CRLF。嗯 尝试在Netbeans中运行脚本时,未找到\r命令,该脚本已配置为使用cygwin bash。这是因为Cygwin不喜欢CRLF 我想要什么: repo和工作目录中所有文本文件的LF行结尾 防止Netbeans将行尾更改为CRLF 防止cygwin在CRLF上窒息 我所尝试的:

我在Windows7上使用Netbeans、Git和Cygwin,并且一直在为行结尾的CR和LF差异而争论

2个主要问题是:

  • Git给出了一个“修改”状态,唯一的区别是回购使用LF,而暂存文件具有CRLF。嗯
  • 尝试在Netbeans中运行脚本时,未找到
    \r命令
    ,该脚本已配置为使用cygwin bash。这是因为Cygwin不喜欢CRLF
我想要什么:

  • repo和工作目录中所有文本文件的LF行结尾
  • 防止Netbeans将行尾更改为CRLF
  • 防止cygwin在CRLF上窒息
我所尝试的:

  • 在我的Windows环境变量中添加了SHELLOPTS=igncr。这可以让Cygwin感到高兴,这样它就可以在不阻塞的情况下消化我的bash脚本,但我想要一个不依赖于此解决方案的解决方案。它看起来笨重,实际上只是隐藏了问题
  • 已尝试在我的gitattributes文件中包括设置autorclf=false、text=auto。这是可行的,除非我在用Netbeans编辑bash文件后尝试使用Cygwin运行它。然后Netbeans阻塞(除非我使用变通方法SHELLOPTS=igncr)

也有类似的问题,但我找不到解决这个特定(但常见)环境的问题,特别是与bash脚本问题有关的问题。

根据您的描述,在该项目上配置NetBeans以接受LF似乎可以解决这个问题(对于Eclipse这样的IDE是可能的,应该是类似的)。Git和Cygwin也应该很高兴。同样重要的是,为您的团队和您决定CRLF或LF。存储库应该是团队中每个人的默认设置。