I have an SVN repository hosted on a freemium site with a maximum repository size. As I approach this capacity I am aware of files I've checked in that I know I can remove permanently to free up disk space. How do I tell SVN that a file can not only be deleted, but it's history as well?
|
feedback
|
|
From the Subversion FAQ:
...
| |||
|
feedback
|
|
You can't remove a file from SVN repository without doing the | |||
|
feedback
|
|
as Hubert says, So, your only option is to delete old revisions from your history. That requires svnadmin dump and load, with optionally a filter to remove directories in your repo you no longer require. (eg old temporary branches). To dump is easy: Once you have your dumpfile, loading it is as easy as running svnadmin load passing in the dumpfile name. it might be a good idea to delete the old repo before loading the new one - then you get the benefit of the latest server filesystem properties, if you don't already have them. If you want to keep all the old revisions but filter out certain directories, you'll want to run the dumpfile through svndumpfilter, which will remove specified paths. Be aware you'll want to dump without using the --incremental option. Obviously, test all the operations locally - dump to a local file, then load it into a temp repo on your local drive (it'll be faster too) and test that history and latest version works ok - I export the latest revision to a directory and use winmerge to check that the files are identical to an export of the latest revision from the live repo. Try it with a historical revision too if you want to be paranoid. | |||
|
feedback
|
|
Generally it is a bad idea to remove files from a repository under version control. I'm not sure I've got it right, but this is how I understand it. Version control is about unique checksums. If you remove something, there is a risk for these checksums to be reused, which leads to conflicts. It is simply not worth it to mitigate a low disk space issue this way, better upgrade your data plan. | |||
|
feedback
|