Should I commit cosmetic changes?

Jad*_*ias 31 version-control coding-style commit

There are minor coding style changes that I often want to commit to the source control, but now the change log is full of those changes that do not affect code functionality.

What should I do next time I have to fix minor things like:

  • Remove and sort usings (in .NET, imports in python, includes in c++)
  • Correct indentation, spacing and line breaks

Ale*_*own 30

如果您要更改代码文件,我真的不明白为什么您不想提交和共享这些更改.如果你不这样做,你就冒了别人会修理它们然后和你的人发生碰撞的风险.

如果它们不是其他用户在代码库中想要的更改,也许您应该问自己为什么要花时间编写它们.

  • 不 - 我经常提交空白/化妆品变化,并且倾向于希望我不会烦人. (4认同)

moo*_*dow 23

提交它们,适当地标记提交注释,以便在浏览更改列表时更容易忽略.

不要在与更改功能相同的操作中提交它们.这样,如果你确实破坏了某些东西,那么更容易缩小破坏它的东西,如果有必要,很容易恢复重构.

  • 这非常重要.将空白更改与功能更改一起提交是危险的.这让人们很难弄清楚究竟发生了什么变化.并且,像其他人一样,确保从提交消息中轻松识别化妆品变化.(你在每次提交时都使用提交消息,对吗?) (9认同)

Pet*_*ang 20

不要将它们与不相关的修复一起提交.

我会提交它们,但是在提交消息中添加一些预定义的关键字.生成更改日志时,可以忽略具有此关键字的邮件.

你可以使用类似的前缀[cleanup].

[cleanup] Removed some whitespace
[cleanup] Changed format
Fixed some major bug.
[cleanup] Corrected indentation
Run Code Online (Sandbox Code Playgroud)

  • [cosmetic] 也适合作为关键字,表示它是一个不做任何功能改变的清理。 (2认同)

Len*_*ate 6

在我是唯一的开发人员的项目中,我倾向于进行这些修复以及其他代码更改.

在有我们团队的项目中,我倾向于尝试自己做出这些改变,这样他们就不会模糊"真正的工作".

我认为修复代码库中"错误"的所有内容非常重要,即使它只是缩进等纯粹的小问题.


Ann*_*ler 5

我认为这取决于您的工作环境以及在同一项目中工作的其他人如何处理可能不同的项目.

因此,我的一般建议是要求使用相同代码的人员并为此类案例提出指导方针.您可能会发现,由于外观的变化,人们不介意签到,或者他们宁愿生活在一些"不干净"而不是处理杂乱的更改日志.

对每个人都透明的明确指南是处理这些问题并避免将来混淆的最佳方式.

就个人而言,我喜欢整理代码而不介意签到,因为纯粹的整容变化.但是,如果它只是一些间距和换行符,我可能只是让它成为,只有当我正在处理相同的代码文件时才改变它.我经常删除和排序使用,因为如果有一大堆使用没有意义,我发现它很混乱,但那只是我.


ang*_*son 5

有几个问题。

首先,不要因为你很无聊并且没有足够的实际任务而对代码进行更改。如果是这种情况,请与您的项目经理交谈并分配给您一些真正有价值的任务。

换句话说,不要为了改变而改变代码。始终为流程中的代码添加一些价值。

现在,如果这些更改有助于使您和其他人更容易处理代码,那么就去做吧。诸如确保遵循命名标准、重构笨拙的代码等。但是为它分配一个任务,这样你的项目经理就可以说“是的,这很好,花 2 个小时在这上面然后再给我答复。”

完成更改后提交更改。不要将它们与您在它们之前或下一个完成的任何实际任务放在一起,这将使分支之间的错误修复合并、代码审查和一般代码浏览变得难以遵循。

“好的,所以你修复了错误 7711,还更改了大约 100 个其他文件。很好,那么这里的错误修复实际上是什么?”