How can I make sure PHPStorm really ignores a huge directory?

I'm working on an online shop site, managed in an SVN repository, and product images are not stored in the repository. In production, the images directory (which does exist within the main project directory) is symlinked to the "real" image directory. As far as SVN is concerned though, it's just an empty directory.

The directory it's symlinked to in production contains ~50,000 images.

I'm trying to replicate this symlinking approach on my development server (Windows 7 64 bit, PHP Storm 6.0.1). My project lives in C:\code, and the images directory is at C:\code\images. Here's what I've done:

In "Settings > Project Settings > Version Control > Ignored Files" I have ignored the directory C:\code\images (I see "Directory: images/" on the listing).

In "Settings > Project Settings > Directories" I have marked C:\code\images as Excluded (it shows up red in the tree and appears under the "Excluded Folders" heading.

As a result, I don't see the directory in the projects pane in the main window.

Then I symlink the directory (C:\code\> mklink /d images t:\networkshare\images).

However, the problem comes when I try to do anything involving Subversion.

If I hit Ctrl+K, the "Performing VCS refresh..." dialog appears, and I haven't been bothered to wait to see how long it actually takes to do it's thing. Presumably it's trawling through the ~50,000 new image files it's discovered.

A similar thing happens when I go to the "Local" tab on the "Changes" pane - I see the "Default" changelist at the top, like this:

Default (No files) (updating...)

... and that's it. The spinner in the top right of the pane goes around and around and around, again, I presume, while it's trawling through all those files.

How can I make PHP Storm really ignore that directory?

Comment actions Permalink

In the past when i've had this problem, the only way I've found to get around it is to remove the directory in question from version control, then set it to ignore.  If it's already in VCS or staged (via svn add, git add, etc.) then it ignores the ... er ... ignore :p.

I would suggest adding an issue to the tracker if one isn't already there asking them to ignore any NEW items in a folder that's ignored, even if if the folder itself is already in version control.

Comment actions Permalink

Hi Deric, thanks a lot, that worked. I'll have a look to see if it's been reported yet :)


Please sign in to leave a comment.