Restoring Deleted Repositories

By default when repository or whole repository group is deleted an archived copy of filesystem repositories are kept. You can see them as special entries in the repository storage such as:

drwxrwxr-x   3 rcdev rcdev  4096 Dec  4  2017 rm__20171204_105727_400795__ce-import
drwxrwxr-x   6 rcdev rcdev  4096 Nov 21  2017 rm__20180221_152430_675047__svn-repo
drwxr-xr-x   7 rcdev rcdev  4096 Mar 28  2018 rm__20180328_143124_617576__test-git
drwxr-xr-x   7 rcdev rcdev  4096 Mar 28  2018 rm__20180328_144954_317729__test-git-install-hooks

Data from those repositories can be restored by simply removing the rm_YYYYDDMM_HHMMSS_DDDDDD__ prefix and additionally only in case of Mercurial repositories remove the .hg store prefix.:

rm__.hg => .hg

For Git or SVN repositories this operation is not required.

After removing the prefix repository can be brought by opening Admin ‣ Settings ‣ Remap and Rescan and running Rescan Filesystem

This will create a new DB entry restoring the data previously removed. To restore OLD database entries this should be done by restoring from a Database backup.

RhodeCode also keeps the repository group structure, this is marked by entries that in addition have GROUP in the prefix, eg:

drwxr-xr-x   2 rcdev rcdev  4096 Jan 18 16:13 rm__20181130_120650_977082_GROUP_Test1
drwxr-xr-x   2 rcdev rcdev  4096 Jan 18 16:13 rm__20181130_120659_922952_GROUP_Docs

Note

RhodeCode Tools have a special cleanup tool for the archived repositories. Please see RhodeCode Tools Clean Up Commands