这里有很多关于在 Git 中处理行结尾的问题。然而,我还没有看到解决的一个问题是使用EditorConfig是否对 Git 应如何处理行结尾有任何影响。
我之所以这么问,是因为几乎我从事的所有项目都有一个.editorconfig设置为 的end_of_line项目lf。这对我来说没问题,但在 Windows 中设置 Git 行结束处理的标准建议是设置autocrlf为true(即在签出时转换为 CRLF)。
在这种情况下,Editorconfig 和 Git 似乎朝着相反的方向发展(Git 会在签出时将行结尾转换为 CRLF,但随后 Editorconfig 可能会在保存文件时将它们转换回 LF)。所以我想知道使用 Editorconfig 是否会使 Windows 上的行结尾最佳实践有所不同?
笔记:
我的倾向是遵循 Editorconfig 并向每个具有指定项目行结尾的文件的项目添加一个包含(即告诉 Git 不要触摸行结尾,无论设置如何)的.gitattributes文件* -text(我知道每个人处理这些项目时使用 Editorconfig 和/或使用使用结尾的操作系统,这似乎可以避免 Git 经常在 Windows 中发出的恼人的行结束转换警告。问题是,尽管阅读了很多关于该主题的文章,Git 中的行结尾仍然让我感到困惑,所以我不确定上述内容不会引入新问题(之前的实验最终破坏了图像文件)。那么:作为一种方法有意义吗?或者 Editorconfig 是否对行结束处理最佳实践没有影响?autocrlf.editorconfiglf.gitattributes
在::first-line与::first-letter伪元素,因为它们的名称所暗示的,让你的风格的HTML元素的第一个字母和第一道防线。
但是,我找不到任何方法在浏览器的开发人员工具中检查这些样式。其他伪元素和伪类(如::before、::after、:first-child等)可以通过“检查元素”在开发工具中轻松检查,但我找不到检查::first-letter或 的方法::first-line。有没有办法让我失踪,或者目前不可能?
我有一个问题,当我运行时git stash -u(即存储所有文件,包括未跟踪的文件),Git删除我的node_modules目录.除此之外,它甚至没有恢复它git stash pop- 我必须npm install再次运行才能恢复它.
在.gitignore(通过该行node_modules/*)中忽略node_modules ,并且据我所知,从未在项目的历史中提交(不git log --all -- node_modules返回任何内容).不应该git stash忽略它(即使提交未跟踪的文件)?我很确定我之前使用过git stash这样的节点而没有任何与node_modules有关的问题.
更新:我已经检查过,这个问题不仅限于某个特定项目 - 它似乎发生在我运行的任何地方git stash -u.值得一提的是,我的Git版本是2.6.3.windows.1(在Windows上).
css ×2
git ×2
editorconfig ×1
git-stash ×1
gitignore ×1
javascript ×1
line-endings ×1
modernizr ×1
node-modules ×1
windows ×1