如何在 Git 中管理遗留项目的清理提交?

8

我有一个庞大的代码库,几乎每个文件都没有对齐,变量或方法之间的空格不好,或者代码整体看起来很丑陋。

我想在使用它时让它变得更好,但修复缩进等问题会使提交历史记录变得非常丑陋。

我不是说小的缩进问题,比如一行只差一个空格,我说的是像这样的问题:

 class Xyz
def foo
end

   def bar
  @something
end
   end

如何清理这样的代码,同时保持历史记录的相关性?我应该一次性自动对齐所有内容并进行一个大的提交吗?

2个回答

9
我会在一个单独的(本地)分支中修复所有这些问题。一旦准备就绪,我会进行“压缩合并”。
git checkout -b cleanup develop
# Do some cleanup, do some commits and so on
git checkout develop
git merge --squash cleanup 
git commit -m "My Cleanup"
git branch -D cleanup

这样做,我会得到一个“巨大的提交”与这些更改,但我不会完全相信任何自动格式化程序,并且我不必在一天内完成它,或者在合并之前完全没有提交。


1

你可以在一个单独的分支中进行清理,完成后将其合并回主分支。

这样可以给你时间来整理代码,而且不必编辑历史记录(这是我从不做的事情)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接