Mr. Boy
Mr. Boy

Reputation: 63710

How do I remove all traces of a file from Subversion?

Is it possible to remove a file, with all version history, from SVN? For instance if you add a file with confidential financial information simply to have it backed up, and then realise it's in a SVN sub-directory all your developers can see...

Upvotes: 8

Views: 529

Answers (2)

Troy Hunt
Troy Hunt

Reputation: 20387

As already mentioned, this is going to require dumping and filtering. However there a few gotchas here which can make it painful (i.e. if the file has moved or paths changed). I just went through a very similar process and documented it carefully here: http://www.troyhunt.com/2009/12/black-art-of-splitting-subversion.html

Upvotes: 2

John Feminella
John Feminella

Reputation: 311436

Yes, but it's not easy. You must be an administrator on the server where the Subversion server is running. Then use svnadmin dump to dump the repository, and svndumpfilter to exclude the appropriate file, and then reconstitute the repository. This is a costly and expensive operation which will take a long time for large repositories.

See the Subversion FAQ for more details. A detailed example of how to do this is also given in the Subversion book.

Upvotes: 11

Related Questions