我不止一次从同行那里听说,“建议”不要在编写代码的 IDE 中对代码进行版本控制。我已经看到他们在Eclipse、IntelliJ IDEA等上开发,但是从命令行或独立客户端进行版本控制(在我当前的场景中 - Git),而不是使用 IDE 随时可用的相应插件。
虽然我在 Eclipse 中使用过版本控制插件,但从未发现任何问题,但我想知道一般规范是什么,为什么?
我不止一次从同行那里听说,“建议”不要在编写代码的 IDE 中对代码进行版本控制。我已经看到他们在Eclipse、IntelliJ IDEA等上开发,但是从命令行或独立客户端进行版本控制(在我当前的场景中 - Git),而不是使用 IDE 随时可用的相应插件。
虽然我在 Eclipse 中使用过版本控制插件,但从未发现任何问题,但我想知道一般规范是什么,为什么?
我不认为有一个普遍的规范。这个问题的答案是非常主观的。
我个人不使用任何 IDE 集成(甚至不使用 GUI 工具,除了内置的git gui
和gitk
命令行:
另一件事是您对版本控制工具的了解与您的 IDE 绑定。也许您想为使用 Eclipse 编辑的源(例如,您的点文件)以外的其他内容设置一些版本管理。
或者有一天您切换 IDE,放弃 Eclipse 并开始使用 Visual Studio。那么你不必只学习 Visual Studio,还需要学习 VS 中的 Git 集成。
我认为与我上面写的相比,没有任何明显的优势可以合法地从 IDE 内部使用版本控制工具。
因此,IMO,从IDE内部进行版本控制是一种不好的做法,并且应该始终从外部进行。
您应该始终尝试为工作使用正确的工具,这是一个个人问题,因此没有“规范”或“良好实践”。
就我而言,我更喜欢使用...
此外,如果您打算打破常规,了解一点Git 内部结构也无妨。
这些插件和附加组件有时会做一些你在使用本机(CLI?)客户端时不会做的事情。
例如,如果您正在使用 Eclipse + ClearCase 插件,文件中的任何更改,甚至添加新行,都会启动签出操作(取决于配置)。
特别是对于 Git,您应该了解它的内部结构才能正确使用它。使用 IDE 可以隐藏这些东西。在正常的琐碎操作中,它会起作用。但是,当您遇到源代码控制问题(丑陋的合并、挑选、rebase 冲突)时,您将不得不去 CLI 解决,但是您不知道 IDE 运行的实际命令是什么首先是这种情况(而且您当时没有使用 CLI 的经验)。