I'm using SVN to manage my Firefox extension project, and this project contains an XPCOM component. Firefox is loading directly from my working directory by placing a text file with the working directory's path in the ./extensions directory of my user profile. When Firefox starts, my extension fails to load & overlay; examining the Error Console, I see that the error states that ".svn cannot be loaded as a component" - a reference to the .svn directory inside my "components" directory of the plug-in structure. Is there any way to get Firefox to ignore this directory, or get SVN to generate a working copy without the .svn directories in it?
Is there any way to get Firefox to ignore this directory
Possibly...
or get SVN to generate a working copy without the .svn directories in it
No. This is how SVN works. these directories store the canges and meta information for svn. They are needed in order to do a commit from your WC.
It may be too late to suggest this, but you won't suffer any of these problems with Mercurial as you have one directory in the root folder - .hg
- instead of the mess of .svn directories as with Subversion. Other benefits include decent file ignores via .hgignore, no mysterious config files (one in your user home directory), rename handling and a host of other better features.
Bitbucket provide free hosting.
The only thing I suggest is that you create some build scripts that deploy your files (sans .svn) into your firefox extensions folder. Not ideal, but you should be able to put something together that only takes a few seconds to run and can be triggered by shortcut key (or for bonus points, by monitoring the files in your working copy, and updating your firefox folder whenever they get saved)
Use the svn export
command to make a (non-recommitable) checkout of your working copy that doesn't include .svn directories.