如何在一个多分支的项目中,避免因代码格式化导致的 git 冲突?

2021-05-24 15:08:33 +08:00
 Kamitora

比如说,插件把 Foo someBar=fooBar() 转换为 Foo someBar = fooBar()

4185 次点击
所在节点    git
28 条回复
raaaaaar
2021-05-24 22:43:18 +08:00
从管理上解决问题,技术是第二个要做的。我合作的时候也遇到过和别人格式不同,拉下来一个快捷键格式化就全变了
bojackhorseman
2021-05-24 22:46:36 +08:00
我用的 prettier 提供的一套方案,还挺好,再也没有每次提交一堆没用的格式化 diff 信息。
ooops
2021-05-24 22:47:52 +08:00
我提一点:有时候冲突是避免不了的(格式以外的),你也可以从解冲突工具入手,比如 beyond compare,jetbrains IDE 基本都有自动解冲突功能,省时省力。
acmore
2021-05-24 23:50:15 +08:00
风格和格式的统一是项目开发的基础,就像要准备好 .gitignore 一样。不同的语言会有对应的格式配置文件,在项目初始化的时候就要带进去。
strawberryBug
2021-05-25 00:01:45 +08:00
checkstyle 了解一下?可以做格式化以及代码检查
zjq07
2021-05-25 09:34:57 +08:00
@luckyrayyy 我实习的时候就这么干过,我用 idea 习惯性的使用格式化代码的快捷键,一个类的代码就会被格式化,缩进的变动也会有记录。然后结果就是提交的时候一个类全是修改,被主管一通骂,自那以后再也不敢直接全局格式化,都是选中自己写的代码块之后再格式化。
kingzeus
2021-05-25 10:46:24 +08:00
@zjq07 项目团队应该共用统一的配置,这样代码格式才能一致。
反过来,修改 code style,最好也是团队投票的结果。
先确定下来 code style,然后完成对应的 lint,最后同步给所有人
MarioLuo
2021-05-29 21:08:33 +08:00
1.统一团队代码风格, 建议基于 google 风格提供的 idea 配置文件定制(4 空格缩进, 120 行宽)
2.在项目没有开发分支是全局格式化掉
这样以后怎么格式化大家都一样了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/778861

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX