Subversion's svn:ignore not working?

apps

#1

I’ve got subversion set up and running well for a Ruby on Rails project. I followed the directions here http://wiki.rubyonrails.com/rails/pages/HowtoUseRailsWithSubversion to “ignore” some of the files (the database config file, and one or two things that need to be changed to make RoR work either on my home machine or on Dreamhost). SVN told me that it was ignoring the files. But when I do a commit (either from my home machine or from a version that’s checked out to my project.mydomain.com domain), it seems to upload these files, and then a checkout will bring them back out.

So basically the command “svn propset svn:ignore “filename” directory/” doesn’t seem to be working for me (or else I’m horribly misunderstanding it). Part of the online Subversion book mentions something about needing a hook set up in svnadmin, but I got the impression that was only for direct connections to the repository.

My question is: How do I get “svn:ignore” to work? Does something need to be changed by the Dreamhost folk in order to get this svn property to work, or is there something I need to do in order to get it to work?

Thanks!

– Tom


#2

One thing I ran into doing that exact thing the other day… you can’t do 'svn rm logs/’ and 'svn propset svn:ignore ".log" log" in the same commit. What ends up happening is that svn will ignore your changes to the actual files (i.e., your deletions) and glady re-update you with the latest version from the repository.

So the solution is to unset the svn:ignore property, svn rm, commit, set the property back and commit again.


#3

I believe the ignore set must be set on the directory it applies to.

ie: you can’t ignore ./foo/bar/*.tmp from “./foo”