假设我有一个包含多个用户代码的git仓库,但其中一些人不遵循缩进规则,使用空格而不是制表符。更改这一点很容易,但是通过清理他们的代码,
我知道可以使用相应的标志指定提交作者和日期,但是这个解决方案对我来说并不理想,因为我需要迭代用户并依次更改每个用户的缩进。我还必须找到更改行的原始提交日期,以便使用
我也知道
在git中更改跟踪文件时,是否可能不被视为更改行的作者,并且最好不更改原始提交的日期?
git blame
变得不那么有用,因为我会被指责为别人的代码。我知道可以使用相应的标志指定提交作者和日期,但是这个解决方案对我来说并不理想,因为我需要迭代用户并依次更改每个用户的缩进。我还必须找到更改行的原始提交日期,以便使用
--date
标志。我也知道
git blame -w
会忽略这种空格更改,但我想让更改变得透明。每次使用 blame
时都要使用 -w
让我感到繁琐。(顺便说一下,我怀疑其他人在从 blame
中提取信息时是否记得使用该标志)。如果更改与空格无关(例如,将单引号替换为双引号),此方法也会失效。在git中更改跟踪文件时,是否可能不被视为更改行的作者,并且最好不更改原始提交的日期?
git config user.name
(和user.email
)。不过,我得断言这是不道德的解决方案,因为你在撰写更改时实际上是在说谎。如果风格指南很重要,请不要接受违反其规定的提交。如果你正在使用集中式源代码控制,请安装一个钩子来拒绝这些提交当有人尝试推送时。 - Stephen Newell