goland设置缩进tab为4个空格

问题描述:

最近发现通过goland IDE提交到git上的代码的缩进自动换成了制表符,但是goland设置的Code Style中go语言的缩进是4个空格,而且保存代码前都会手动执行代码格式化确保代码格式统一,最后发现通过goland提交代码到git仓库时,goland提交前会调用go gmt命令对代码格式进行处理,导致4个空格的缩进变成了tab制表符;通过git bash或TortoiseGit提交代码时候没有这个问题

原因分析:

最开始以为是git设置的缩进有问题,参考https://www.imooc.com/wenda/detail/561503,通过命令把tab制表符设置成四个空格,通过git提交代码没有这个问题说明不是git的问题;(--后来经过验证这个问答中给的切换tab和空格缩进格式的方法是利用Git属性过滤驱动程序(另见Gitpro书),定义污点/清洁机制。这样做的结果: 1.每次您签出回购文件时,空格都可以在选项卡中转换--即git checkout 已有文件或git pull拉取新文件时,文件里的空格缩进会变成tab缩进; 2.但是,当您签入(并推送和发布)时,这些相同的文件只使用空格存储--即git commit时文件里的tab缩进会变成空格缩进; 所以这种做法不能保证推送到库上的代码和从库上拉下来的代码都是空格缩进的,不

你可能感兴趣的:(go,goland)