Saturday, June 21, 2008

Subversion’s Biggest Hole

Ned Batchelder:

The thing I miss that Subversion is lacking is a repository setting for globally ignored files. You can set a property on a directory to ignore (for example) *.pyc files. And you can set your client to always ignore *.pyc files in any working tree on your machine. But there is no way to set a repository to ignore *.pyc files anywhere they appear in the tree.

4 Comments RSS · Twitter

Bzzzzt! Wrong. Check out ~/.subversion/config, it's EASY to globally ignore files or directories in subversion.

Alf Watt: Those settings are for your computer (user), not for the repository.

Michael,

Completely agree. In fact, we've had an open issue for this feature for a while:

http://subversion.tigris.org/issues/show_bug.cgi?id=1974

The reason it's hard to implement has to do with the way Subversion working copy data is structured: most of the configuration information a server would be broadcasting would be associated with paths and directory trees (svn:ignore data is a perfect example), and because our working copy metadata is spread out, it's hard to get the "inheritance" behavior right. In retrospect, we probably should have done centralized metadata storage for working copies -- and in fact, there's a rewrite of the working copy code under way to do exactly that, after which adding this feature would become much easier.

Karl: Thanks for the info.

Leave a Comment