有没有办法在提交 Git 之前强制执行 IntelliJ 代码样式格式?
Is there a way to enforce InteliJ code style formatting before committing to Git?
我们想为所有团队创建一个通用的代码风格,以解决不同格式导致文件在代码审查期间看起来 "dirty" 的问题,尽管它们不包含实际有意义的更改
步骤:
- 创建 InteliJ 代码风格 XML
- 将此 XML 导入我们所有的 IDE (InteliJ)
- 转到每个 git 存储库 (~30) 并创建一个将重新格式化所有代码的提交。
我的问题是,有没有一种方法可以强制所有提交都与这种新格式保持一致?
例如,如果开发人员尝试提交未格式化的代码,则会收到错误消息,并且推送会中止。
如果您使用 IntelliJ 提交代码,您可以在 IDE.
上配置一些 "Before Commit" 规则
在 Windows 上,转到文件 -> 设置 -> 版本控制 -> 提交对话框。
您将看到 3 个复选框:"Reformat Code"、"Rearrange code"、"Optimize Imports".
在 Mac -> 首选项 -> 版本控制 -> 提交对话框。
当然,如果您通过 IDE 提交,这只会应用您的样式。
如果您想要一个简单的 GIT 解决方案,您应该看看 git 挂钩。挂钩是允许您扩展 git 功能的一小段代码(您可以称它们为插件)。您还可以将它们作为项目的一部分进行版本控制。
这是对如何解决您遇到的相同问题的非常详细的解释:https://proandroiddev.com/ooga-chaka-git-hooks-to-enforce-code-quality-11ce8d0d23cb
Git hooks也可以应用于更复杂的代码管理解决方案,基于Git,(即:bitbucket)
我们想为所有团队创建一个通用的代码风格,以解决不同格式导致文件在代码审查期间看起来 "dirty" 的问题,尽管它们不包含实际有意义的更改
步骤:
- 创建 InteliJ 代码风格 XML
- 将此 XML 导入我们所有的 IDE (InteliJ)
- 转到每个 git 存储库 (~30) 并创建一个将重新格式化所有代码的提交。
我的问题是,有没有一种方法可以强制所有提交都与这种新格式保持一致?
例如,如果开发人员尝试提交未格式化的代码,则会收到错误消息,并且推送会中止。
如果您使用 IntelliJ 提交代码,您可以在 IDE.
上配置一些 "Before Commit" 规则在 Windows 上,转到文件 -> 设置 -> 版本控制 -> 提交对话框。 您将看到 3 个复选框:"Reformat Code"、"Rearrange code"、"Optimize Imports".
在 Mac -> 首选项 -> 版本控制 -> 提交对话框。
当然,如果您通过 IDE 提交,这只会应用您的样式。
如果您想要一个简单的 GIT 解决方案,您应该看看 git 挂钩。挂钩是允许您扩展 git 功能的一小段代码(您可以称它们为插件)。您还可以将它们作为项目的一部分进行版本控制。
这是对如何解决您遇到的相同问题的非常详细的解释:https://proandroiddev.com/ooga-chaka-git-hooks-to-enforce-code-quality-11ce8d0d23cb
Git hooks也可以应用于更复杂的代码管理解决方案,基于Git,(即:bitbucket)