如何隐藏IntelliJ项目之外的文件,但同样的Mercurial回购

时间:2012-04-17 05:53:40

标签: mercurial intellij-idea

假设我在Mercurial中有这样的项目

root/
  proj1
  proj2

如果我在IntelliJ中打开proj1,我将必须将VCS根目录设置为“root”,否则IntelliJ将不会显示任何更改。但是,如果我这样做,我还会在proj2中看到更改的文件。如何在仍然看到我的更改的同时排除proj2或将root设置为proj1?

2 个答案:

答案 0 :(得分:1)

您可以在文件中隐藏文件夹 - >项目结构...... - >模块

选择您的模块,然后选择要隐藏的文件夹,然后单击“排除”。

enter image description here

答案 1 :(得分:0)

这可能很棘手,因为mercurial旨在用作One Project One Repo。默认情况下,mercurial会在运行hg commit时提交所有文件。有一个命令可以提交很少使用的特定文件:hg commit -I file1.foo -I file2.foo -I file3.foo。因此,您基本上试图告诉IntelliJ不断运行该类型的命令,但假装您没有看到其他文件知道您需要运行该类型的命令。

如果使用提交对话框进入IntelliJ提交,则可以看到它要提交的文件。您可以取消选中proj2中的文件。通常IntelliJ会记住在将来的提交中继续忽略这些文件,但是如果您选择不同的提交对话框,它们可能会再次出现。

实际上,您应该将每个项目都拉到自己的存储库中。然后,这个和许多其他潜在的设置问题就消失了。阅读One Project One Repository - Mercurial Used Right了解原因。