PyCharm 2023.1 无法使用网络驱动器上的代码(以前的版本可以);任何修复?

问题描述 投票:0回答:1

问题

我在 Windows 上使用 miniconda 运行 PyCharm Professional 2023.1。

我需要编写小型(大概)脚本和笔记本的组合,并且 理想情况下我需要将代码放在网络驱动器上。在某些情况下,我会使用本地 git 存储库进行版本控制,在其他情况下,脚本非常平庸,甚至没有必要。这个平庸的任务在以前的版本中运行良好,但在 PyCharm 2023.1 中实际上是不可能的,因为它变得太慢以至于无法使用。例如:

  • 如果我创建一个空项目,甚至在添加任何新文件之前, PyCharm 的行为就像一个 80 年代的软件:我点击一个菜单然后 在任何事情发生之前我必须等待 5-6 秒。
  • 我开一个新的 Jupyter 笔记本,等待笔记本启动后,甚至 运行像“5+5”这样的普通单元可能需要 .. 12 秒!

我的问题是:其他人也会这样吗?你有没有找到比我在下面找到的更好的解决方案?

我的(部分)解决方案

  1. 将 Spyder 用于小型脚本和笔记本。 PyCharm 的额外功能派上用场的地方:
  2. 在C盘创建一个本地项目,然后设置部署选项,以便与远程驱动器同步文件。这意味着您不能再使用相对引用来导入网络驱动器上的数据。如果您从部署选项中删除对“.git”的排除,PyCharm 的部署工具也会将本地 git 存储库同步到网络驱动器。
  3. 在网络驱动器上创建一个 git 存储库,并使用 PyCharm 从该存储库克隆。
  4. 如果您可以访问某种集中式 git 存储库或等效存储库,您显然可以在存储库 - 本地驱动器 - 网络驱动器之间同步,但如果脚本非常小且平庸,这可能会增加一定程度的不必要的复杂性

为什么我认为这是一个错误

我很清楚大型项目不应该存储在网络驱动器上(参见 为什么我需要它 更远的地方)但事实并非如此。

我知道在网络驱动器上扫描大型代码库效率低下,而且我知道像 Spyder 这样的 IDE 不那么复杂,后台扫描较少,因此在网络驱动器上工作得更好。

但是用“5+5”运行一个笔记本单元需要 12 秒是可笑的,没有理由,后台发生了一些非常错误的事情.

更不用说以前版本的 PyCharm 运行得非常好——在完全相同的网络驱动器上,所以一定有一些东西随着更新而改变了。

我是如何调试它的

我得出的结论是文件在网络驱动器上,因为

  • 我用 python 和 spyder 创建了一个新的 conda 环境
  • 如果我在网络驱动器上创建项目,新环境会给我同样的问题
  • 如果我在本地 C 盘上创建一个项目,两种环境都可以很好地工作

我还有:

  • 禁用同步外部更改在设置->系统设置
  • 开启省电模式

为什么我需要它

我很清楚大型项目应该存储在 git 存储库等上。但是这里我们不是在谈论生产关键应用程序。用例是这样的:

  • 工作网络驱动器有客户和项目的文件夹
  • 作为特定客户的特定项目工作的一部分,我们从客户那里收到一些数据。我们需要对该数据执行一些简单的探索性分析,将脚本和输出放在项目的子文件夹中非常有用。
intellij-idea pycharm jetbrains-ide
1个回答
0
投票

我正在回答我自己的问题,仅供参考,希望这对其他人也有用。 我已经确认导致问题的网络驱动器实际上经常由于多种外部原因而变慢 - 太多用户访问该驱动器(即使不是该特定文件夹等)。我已经通过一些测试验证了这一点,包括将文件从那里传输到 C 盘。

我仍然不明白为什么 Spyder 工作得很好而 PyCharm 却不能,但我想得出的结论是: 慢速网络驱动器可能与其他编辑器一起工作正常但会使 PyCharm 停止,即使在执行应该很少的操作时也是如此与驱动器本身做,就像在笔记本上运行“5+5”,或者在处理仍然空的脚本时单击菜单(并等待 10 秒发生某些事情)。

总结:

  1. 如果您确实需要将脚本保存在网络驱动器上,请确保网络驱动器足够快
  2. 如果可行,请尝试更快的驱动器 - 问题是网络驱动器访问的功能,不会发生在所有网络驱动器上
  3. 如果不是,请考虑另一个编辑器,如 Spyder,它受此影响不如 PyCharm
© www.soinside.com 2019 - 2024. All rights reserved.