我正在使用PhpStorm来管理一些项目,这些项目都在同一时间进行。
PhpStorm请记住项目之间加载的文件,所以当我回到Project Foo时,我所有的最新文件仍然是打开的。
但是,项目栏很庞大,有很多子项目,很多但不是全部都是git中的分支。
有没有办法改变上下文或子项目,这样当我改为Bar Laravel Refactor时,我为Bar Window Widget打开的所有文件都会被保存?再次保存这些并在处理该子项目时重新打开我的Bar Window Widget文件?
即使能够基于当前的git分支做到这一点也将开始。
答案 0 :(得分:2)
听起来您使用的是单个PhpStorm项目,其中包含许多单独的项目或更大项目的子项目。
一种可能的解决方案是为每个子项目创建单独的PhpStorm项目(例如,根据它们存储在VCS存储库中的方式)。如果您需要为主项目创建另一个PhpStorm项目,您可以选择让它排除包含子项目的目录(并由不同的PhpStorm项目处理)。您可以通过右键单击Project
视图中的目录然后Mark Directory As -> Excluded
来执行此操作。可以在Preferences
页面下的Directories
对话框中管理排除的目录。
此解决方案的缺点:您必须使用多个PhpStorm窗口(每个项目在新窗口中打开)。
对文件和目录进行分组的另一种方法是创建范围(Preferences -> Appearance & Behaviour -> Scopes
)。范围定义规则以根据文件和目录的名称和路径包含和排除文件和目录。它不是很灵活,但它的工作原理。范围显示在Projects
窗口的上方下拉框中,其中还包含Project
,Project Files
,Problems
a.s.o。)。
这不是您要求的,但它可用于管理复杂项目。选择新范围时,Project
窗口中仅列出其包含的文件和目录。
更接近您需要的是Context
功能。它与Task
功能密切配合,但也可以单独使用。两者都可以在menu -> Tools -> Tasks & Contexts
中找到。
打开您需要处理功能Foo
的一些文件。将上下文保存为Foo
。关闭文件,打开您需要处理功能Bar
的其他文件。将上下文保存为Bar
。加载以前保存的Foo
上下文。它应该做你需要的。
如果您还使用Tasks
,则可以将上下文与任务相关联。自动切换任务也会切换相关的上下文(并打开正确的文件列表)。