Some files were uploaded by mistake to my repository and I would like to know if there is any method to remove them completely because if I delete them and commit them, the history that they were once there is still there.
Some files were uploaded by mistake to my repository and I would like to know if there is any method to remove them completely because if I delete them and commit them, the history that they were once there is still there.
Apparently it can be done, but it is not trivial. It is explained in this document (in English) .
There is an "issue" to be able to have a svnadmin obliterate
command but it is not yet supported.
The way to do it for now is (free translation of the previous link):
Meanwhile, the only way to do this is through a
svnadmin dump
of the repository, filter the result usingsvndumpfilter
(excluding the path you want to delete) and then%svnadmin load
. More details on the chapter 5 of the Subversion book .
At the moment it is not possible. There is a feature request to create the% command svn obliterate
that in theory would serve what you need, but unfortunately the issue has been open for a long time and there seems to be no news about this.
However, there is the possibility of directly manipulating the dumps to achieve something similar.
Using svnadmin
and svndumpfilter
svnadmin dump <nombre-del-repo> | svndumpfilter exclude "<archivo-a-eliminar>" > <nombre-archivo-backup>
Then the new repository is created and the dump is imported in the following way:
svnadmin load <nombre-del-repo><nombre-archivo-backup>