gpt4 book ai didi

macos - git:EOF 处的新空行

转载 作者:IT王子 更新时间:2023-10-29 00:40:05 24 4
gpt4 key购买 nike

所以我在add-ing 文件和commit-ing 之前运行git diff --check,在两个特定文件上我得到path/filename:linenumber: EOF 处的新空行。如果我删除这些文件中的最后一个空行,我不会收到任何消息,但我认为用换行符结束我的文件是一种很好的风格。奇怪的是,我认为具有完全相同结尾的其他文件没有给出任何消息。我是 git 的新手,在 OS X Yosemite 上使用 git 2.0.1。我使用 vim 作为我的编辑器。

如何让我的文件以换行符结尾,同时避免出现此消息?我应该忽略它吗?

最佳答案

这里有两个问题。

  • 你对“换行”和“换行”感到困惑:

    “新行”是实际的空行(仅包含“换行”字符),“换行”是用于标记当前行结束的特殊字符。 p>

    大多数编译器、解释器和 Unix 工具希望您的文本文件以换行符结束,以避免在处理多个文件时出现歧义,而不是“换行符”。

    大多数编辑器,包括 Vim,都会在每一行的末尾添加必要的字符,包括最后一行,因此您无需做任何事情来确保满足要求。

    尤其是不要在 EOF 处添加“新行”。

  • 您可能已经习惯了不良行为:

    “换行符”传统上被 Unix 工具、大多数编译器和 Vim 解释为“行终止符”。这意味着该字符之后的任何内容都被视为在另一行中。由于该字符是文件中的最后一个字符,因此没有理由向用户显示不存在的行。

    唉,大多数 GUI 编辑器将其解释为“行分隔符”,这意味着它标记了两行之间的分隔符,而这些编辑器通常会在文件末尾显示一个不存在的行以满足该解释。

    我可能假设太多了,但看起来您已经习惯了这种错误行为,并尝试通过在文件末尾添加一个完全不必要的“新行”来模仿它。

要么你继续在源文件的底部添加“新行”,将其视为某种格式和编码指南,然后停止将这些 Git 消息视为错误消息。

或者您停止添加那些无用的“新行”。

我会选择第二个选项。

关于macos - git:EOF 处的新空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27059239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com