Created
November 30, 2016 18:04
-
-
Save MikeChristianson/52f58af829c77c8d66747332508a4ee9 to your computer and use it in GitHub Desktop.
Restores a compressed Subversion dump to a new Subversion repository with its original repository UUID.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/zsh -ex | |
# Restores a compressed Subversion dump to a new Subversion repository with its original repository UUID. | |
# Uses `svndumptool` to ensure improper EOLs in svn:log and svn:ignore are fixed. | |
# Paths are hardcoded, but easily changed to suit needs. | |
repo=$1 | |
cd /data/svn | |
source svnenv/bin/activate | |
gunzip /extract/Recover/${repo}.gzip -c | pv -eta > ${repo}.svn | |
svndumptool.py eolfix-revprop svn:log ${repo}.svn ${repo}.eolfix-revprop-log.svn | |
rm ${repo}.svn | |
svndumptool.py eolfix-prop svn:ignore ${repo}.eolfix-revprop-log.svn ${repo}.eolfix-prop-ignore.svn | |
rm ${repo}.eolfix-revprop-log.svn | |
svnadmin create ${repo} | |
pv -eta -n ${repo}.eolfix-prop-ignore.svn | svnadmin load --force-uuid ${repo} | |
rm ${repo}.eolfix-prop-ignore.svn | |
deactivate |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment