Python PyCharm:始终将venv目录标记为已排除

Python PyCharm:始终将venv目录标记为已排除,python,pycharm,virtualenv,Python,Pycharm,Virtualenv,在Python3中,我不再在~/.virtualenv中创建virtualenv,而是将它们保存在项目目录/venv 但是,现在每个PyCharm项目中的搜索结果都包含来自venv子目录的结果,直到您手动右键单击并将其从项目中排除 如何从PyCharm索引/搜索中全局省略名为venv的目录?在文件>设置>项目:>项目结构中,底部是排除文件:您可以在其中放入类似的内容 venv或venv;xml(根据您的评论) 它似乎无法识别路径(例如,foo/venv),但这会满足您的要求。您可以按照面包屑路径

在Python3中,我不再在
~/.virtualenv
中创建virtualenv,而是将它们保存在项目目录
/venv

但是,现在每个PyCharm项目中的搜索结果都包含来自
venv
子目录的结果,直到您手动右键单击并将其从项目中排除


如何从PyCharm索引/搜索中全局省略名为
venv
的目录?

文件>设置>项目:>项目结构中,底部是
排除文件:
您可以在其中放入类似的内容

venv
venv;xml
(根据您的评论)


它似乎无法识别路径(例如,
foo/venv
),但这会满足您的要求。

您可以按照面包屑路径全局排除PyCharm中的目录:

设置>编辑器>文件类型>忽略文件和文件夹:

底部是一个文本框,您可以在其中输入与项目基本目录相关的符号链接
/venv
,如图所示:

在此之后,默认情况下,新项目已排除
/venv
。对于新项目,不需要重复上述步骤。在使用中,“在路径中查找”显示:


另外,我还开始将我的虚拟虚拟企业保存在他们的项目目录中。一旦你有几十个项目,它就会变得很方便

这样做是不好的做法:虚拟环境和项目源应该分开(毕竟相同的venv可以用于多个项目)。我要解决的不仅仅是venv。还有一些文件,比如
coverage.xml
,我总是希望从搜索结果中排除。我认为称之为不良做法是不公平的,因为许多用户只是更喜欢每个项目有一个venv。我当然不会称之为“不良做法”,实际上我鼓励我的开发人员这么做。我们认为VVES完全是一次性的,并且经常快速地重新创建它们,并且对它的工作方式非常满意。问题是关于创建全局排除设置。似乎有效的方法是手动将此类文件夹标记为“项目结构>(选择项目)>中排除的文件夹”,右键单击中心窗格中所需的目录,以便将这些名称添加到右侧窗格中(PyCharm 2017.3)。这看起来很有希望,但它有一个不可接受的副作用,即安装在venv上的每个第三方项目下面都会出现一个红色的波形,并且不能通过ctrl+单击浏览。PyCharm现在认为找不到要去的声明,即使它们实际上安装在项目的venv中。你知道吗?@wim说得好!无法复制,我的第三方库(项目?)已安装pip。“转到声明”或ctrl+单击打开定义的工作,无红色涂鸦(且内部不污染搜索)。副作用修复:
venv
path/文件结构稳定,排除文本框中的核心文件列表;除了core
venv
文件之外的任何内容都不是全局的,可以使用另一个答案中的方法逐案排除/隐藏。