【问题标题】:Goland, and PyCharm on the same checked out code repo in a macGoland 和 PyCharm 在 mac 中的同一个签出代码仓库
【发布时间】:2018-04-19 14:52:31
【问题描述】:

不确定这是否是提出以下问题的正确论坛:

我在运行 High Sierra 的 Macbook Pro 机器上的同一个签出代码仓库中使用了 pycharmgoland。我想确保pycharmgoland 之间的临时文件不共享。

我面临的主要问题是,当我打开 GoLand 或 PyCharm 时,它会从我使用的最后一个软件中获取状态(即,如果我使用 pycharms 进行一些编码,则会打开同一组文件当我打开 GoLand 时,这很烦人,而且会浪费很多时间。

我可以修改什么以确保它们都保持单独的状态。

编辑->

似乎 intellij 确实可以根据此链接进行配置。

https://intellij-support.jetbrains.com/hc/en-us/articles/207240985-Changing-IDE-default-directories-used-for-config-plugins-and-caches-storage

理想情况下,我希望 pycharm 缓存位于 .idea/pycharm.idea/goland

【问题讨论】:

  • 在这种情况下,您是否可以选择在 GoLand 中使用 Python 社区插件?或者甚至是 IntelliJ IDEA Ultimate,它允许您在同一个 IDE 中同时使用 Go 和 Python。
  • @dlsniper - 我从我的公司获得了 goland 和 pycharm 的许可证,但没有 intelliJ IDEA Ultimate .. goland 插件不如使用 goland 本身那么好(我相信)...可以吗在 intelli J IDEA Ultimate 中使用 goland 也是这样吗?
  • 如果您使用 IntelliJ IDEA Ultimate,Go 插件提供与 GoLand 相同的功能。对于所有其他“小型”IDE,如 PyCharm、RubyMine 等也应该如此。如果您有时间,我建议您检查 IDEA Ultimate,然后如果需要,与支持人员讨论在这种情况下为您提供的任何选项。
  • @dlsniper - 我没有 IntelliJ IDEA Ultimate 的许可证,所以我想我原来的问题陈述仍然有效
  • @tsar2512 当您在 IntelliJ IDEA 中创建项目时,您可以指定存储项目元数据的位置,它可以是项目目录下的某个子目录,其中包含另一个 .idea 子目录。这样你就可以独立打开project\idea\.ideaproject\pycharm\.idea了。

标签: pycharm goland


【解决方案1】:

这可能很困难,因为显然 JetBrains 为多个产品使用相同的配置基础架构。我知道它适用于 PyCharm,但我无法检查是否同样适用于 GoLand,因为我没有使用它。假设它适用于其余的答案。

您感兴趣的每个项目设置存在于项目目录的.idea 子目录中,由多个产品使用/共享。来自What is the .idea folder?

解决方案根目录中的 .idea 文件夹(在 OS X 上隐藏)包含 IntelliJ 的项目特定设置文件。这些包括每个项目 VCS 映射以及运行和调试配置等详细信息 作为每个用户的详细信息,例如当前打开的文件、导航历史记录 和当前选择的配置。

在这种情况下,分离 2 个 IDE 的设置的一种可能方法是根据需要创建 .idea 目录的 2 个不同副本以符号链接为 .idea,具体取决于正在使用的 IDE。

请注意,以下示例基于 Linux,可能需要针对 Mac 进行一些调整。

例如,运行 PyCharm:

project_dir> rm -f .idea; ln -s .idea_pycharm .idea
project_dir> ls -ld .idea*
lrwxrwxrwx 1 username at   13 Apr 19 13:05 .idea -> .idea_pycharm
drwxrwxr-x 2 username at 4096 Apr 19 13:03 .idea_goland
drwxrwxr-x 2 username at 4096 Apr 19 13:03 .idea_pycharm
project_dir> pycharm&

然后运行 ​​GoLand:

project_dir> rm -f .idea ; ln -s .idea_goland .idea
project_dir> ls -ld .idea*
lrwxrwxrwx 1 username at   12 Apr 19 13:06 .idea -> .idea_goland
drwxrwxr-x 2 username at 4096 Apr 19 13:03 .idea_goland
drwxrwxr-x 2 username at 4096 Apr 19 13:03 .idea_pycharm
project_dir> goland&

为了更加方便,您还可以(以 root 身份)重命名相应的可执行文件并使用原始名称创建包装脚本,这将自动执行此操作(您必须从相应的项目目录中调用它们)。大致如下:

# mv /usr/local/pycharm-5.0.6/bin/pycharm.sh /usr/local/pycharm-5.0.6/bin/pycharm.sh.orig
# vi /usr/local/pycharm-5.0.6/bin/pycharm.sh
# chmod a+x /usr/local/pycharm-5.0.6/bin/pycharm.sh
# cat /usr/local/pycharm-5.0.6/bin/pycharm.sh
#!/bin/sh

if [ -d .idea_pycharm ]; then
    rm -f .idea
    ln -s .idea_pycharm .idea
    ls -ld .idea*
fi

exec /usr/local/pycharm-5.0.6/bin/pycharm.sh.orig "$@"

注意事项:

  • 整个方案仅在一次运行一个 IDE 时有效,如果在启动第二个 IDE 时仍然运行,第一个可能会受损
  • 包装器仅对启动它们的项目目录有效,如果其他项目同时打开,它们的符号链接将不会更新

【讨论】:

  • 这不是矫枉过正吗,看起来 pycharms/goland 有办法改变位置。我只是不知道如何工作,因为我没有示例等。intellij-support.jetbrains.com/hc/en-us/articles/…
  • @tsar2512 我认为那些不是指每个项目的配置(即您感兴趣的设置存在的位置),而是全局 IDE 配置,影响所有项目。除非我错过了什么:)
  • sigh...不幸的是,您的方案仅适用于我一次使用它们,我通常同时使用它们,因为我在 golang 中有一些层,而在 python 中有一些层......而我没有IntelliJ IDEA
猜你喜欢
  • 1970-01-01
  • 2016-06-26
  • 1970-01-01
  • 2021-02-13
  • 2013-09-28
  • 2023-01-13
  • 1970-01-01
  • 2022-01-14
  • 2019-03-22
相关资源
最近更新 更多