在 MS-Windows 上使用 vim 和 git 的 go-language 源文件中的行尾



情况

我正在Windows 10上编写go语言应用程序。我使用 vim 来编辑我的源文件。我使用 git 进行版本控制。

go语言对源文件格式有一些异常严格的规定。我已经决定,如果我同意这一点,我的生活会更轻松。

问题所在

go fmt命令对于对导入进行排序、排列列和其他内容非常有用。我倾向于在入住前和其他时间使用它。

go fmt命令将行尾更改为lf。这会导致gitvim发出警告。

我的解决方案?

3 个月后移至"答案",因为没有出现其他答案,对于有类似问题的其他人来说,最好在搜索结果中看到这个问题有 1 个答案而不是 0 个答案

我的问题。

我的行尾解决方案是最佳的,还是我错过了以后可能会咬我的东西?

我的解决方案。

为了消除警告,我将 vim 和 git 配置为按照 golang 喜欢的方式工作。

吉特

以下命令阻止 git 尝试执行通常正确的操作:存储库中的标准行尾,每个开发人员工作目录上的平台行尾,根据需要进行转换。

git config core.autocrlf false

现在 git 不会在结账时lf更改为crlf或对行尾咩咩叫。

维姆

_vimrc

au FileType go setl ts=3 sw=3 nowrap nu syntax=go ruler fileformat=unix

fileformat=unix似乎使 vim 对非平台原生的行尾无抱怨。

<小时 />

脚注

发布上述问题 3 个月后,我没有遇到任何缺点或问题 - 至少不是我使用govimgit的方式。

最新更新