在JetBrains工具中,如何在多个开发人员之间共享IDE和项目设置?

Mik*_*eyE 10 settings shared jetbrains-ide intellij-idea

我喜欢JetBrains工具.但是,我无法找到在IDE级别和项目级别与团队成员有效共享设置的方法.到目前为止,我已经按照JetBrains网站上一篇文章提供的说明,标题为"如何管理版本控制系统下的项目".但是,许多关于该文章的评论警告不要将其作为共享项目设置的方法来实施.我在这个方法上遇到了一些问题,即不是我想要分享的所有内容,实际上是与团队成员共享的.

我也尝试使用JetBrains工具的File-> Settings Repository菜单下的函数.它在用户之间共享一些设置,我喜欢它自动创建Git仓库的提交,但它不共享所有设置.共享的设置很棒!但是,似乎"设置存储库"功能正在进行中.

我已经阅读了很多关于这个主题的讨论,但没有关于共享IDE级别设置的方法的明确答案,同时,在使用JetBrains工具时项目特定设置.更不用说,我使用多个JetBrains工具(PhpStorm,PyCharm,WebStorm和IntelliJ).如果有一个解决方案也在所有工具之间共享设置,我会喜欢它,因为某些设置在所有JetBrains工具中是全局的,有些是特定于特定工具的,有些是特定于项目的.

在JetBrains工具之间共享设置更像是"很高兴".我真正需要知道的是,如何在团队成员之间轻松共享全局IDE设置和项目级别设置.但是,我会给任何可以弄清楚两者的人提供疯狂的尊重.:-)

Mik*_*eyE 6

我终于找到了几分钟来写一个答案。我想写一个更完整的答案,但我最近非常忙,所以现在必须这样做。

这个解决方案描述了我一直在使用什么来共享 PyCharm 项目的代码和设置。这个解决方案有一个警告,我将尝试描述和详细说明一个解决方法。

按照 JetBrain 知识库上的说明,我们将整个项目文件夹添加到 Git 存储库中。但是,在这样做之前,请确保workspace.xml通过.gitignore在项目目录中创建一个文件并至少添加以下行来至少排除该文件:

.idea/workspace.xml
# JetBrains also recommends  adding tasks.xml, but I found it useful to
# share tasks with team members.
# Uncomment the following line to avoid sharing tasks with team members
# .idea/tasks.xml
Run Code Online (Sandbox Code Playgroud)

您肯定会想要添加workspace.xml.gitignore因为它存储了您所有的本地窗口大小、调试面板布局等。我的团队发现同步我们的任务很有用,这样我们就可以协调工作。但是,每个团队的工作方式都不同,因此请自行决定。

存储了三个主要位置项目和个人偏好:

  1. <project_directory>/.idea 包含项目特定的设置。
  2. $HOME/.PyCharmYYYY.M/config 包含由 PyCharm 管理的所有项目的选项(或将“PyCharm”替换为任何其他 JetBrains 工具)。
  3. 如果您使用 File->Settings Repository 中的共享设置,$HOME/.PyCharmYYY.M/config将包含通过 JetBrain 内置的“共享设置”功能共享的所有设置。我和我的团队并不关心它,因为它似乎会自动分享一些我们不想分享的东西(比如颜色主题和键映射)。而且我们无法选择一组选项来在团队范围内共享。长话短说,它没有给我们所需的灵活性和控制力。

我们确实尝试过同时使用选项 1 和选项 3,但它太笨拙了。例如,一个人会更改一种字体,下次我们重新启动 JetBrains 时,整个团队都会更改它。这是一团糟。如果您决定尝试使用选项 1 和 3,我建议您谨慎行事。

目前,我们只使用选项 1,而且效果很好。

您可能希望从.gitignore文件中添加或删除的一些其他值得注意的文件夹是:

  • <project_folder>/.idea/runConfigurations/ 包含用于运行鼻子测试和调试代码的所有调试和运行配置。
  • <project_folder>/.idea/scopes/ 包含用于将您的项目文件视图过滤为更多管理分组的所有范围。
  • $HOME/.PyCharmYYYY.M/options包含您正在使用的 PyCharm 版本的所有全局选项。例如,配色方案、键映射和任何其他非项目特定选项。有关其他全局设置的完整列表,请参阅这篇 JetBrains 文章或以下摘录:

在此处输入图片说明