SVN备份还原

转载 2016年02月22日 11:39:39

SVN备份:

----------------------准备--------------------------------------

SVN工作目录:D:\Repositories

备份文件目录:W:\MySvnBackup\MyBackupFile

------------------------创建bat文件---------------------------

@echo off

rem --------set svn directory----------
set svnpath=D:\Repositories


rem --------set backup directory----------
set SvnIncrementBackupPath=W:\MySvnbackup


rem --------log file path----------
set log_path=W:\BackupLog
set lastRevision_path=W:\LastRevision


rem --------set backup project----------
set backproject=MyProject1
set backproject1=MyProject2
set backproject2=MyProject3


if not exist %SvnIncrementBackupPath% (mkdir %SvnIncrementBackupPath%)
 
D:
cd %svnpath%
dir /b /ad > dirs


if exist temp_directory (
   del /q temp_directory
  )


for /f %%I in ( dirs ) do if exist "%%I\conf\svnserve.conf"  echo %%I >> temp_directory
 
for /f %%i in ( temp_directory ) do (


 if %%i==%backproject% (
   set project=%%i
   call :Dump_Entrence
   )
if %%i==%backproject1% (
   set project=%%i
   call :Dump_Entrence
   )
if %%i==%backproject2% (
   set project=%%i
   call :Dump_Entrence
   )
 )


del /q dirs
del /q temp_directory
 
:Dump_Entrence
 
if not exist %SvnIncrementBackupPath%\%project% mkdir %SvnIncrementBackupPath%\%project%
if not exist %log_path% (mkdir %log_path%)
if not exist %lastRevision_path% (mkdir %lastRevision_path%)
 
set lower=0
set upper=0


svnlook youngest %svnpath%\%project%> %log_path%\A.TMP
 
for /f %%D in (%log_path%\A.TMP) do set upper=%%D


if %upper%==0 goto :N_EXIT 


if not exist %lastRevision_path%\%project%_last_revision.txt goto :BACKUP


for /f %%C in (%lastRevision_path%\%project%_last_revision.txt) do set lower=%%C


set /a lower=%lower%+1


if %lower% gtr %upper% goto :N_EXIT


:BACKUP
echo start backup %project%


set filename=%project%_%lower%_%upper%


echo %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%:start backup %project%, revision:%lower% to %upper% >>%log_path%\%project%.log
svnadmin dump %svnpath%\%project% -r %lower%:head --incremental >%SvnIncrementBackupPath%\%project%\%filename%.dmp
echo %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%:end backup %project% >>%log_path%\%project%.log
echo.>>%log_path%\%project%.log


echo %project% backup successful


:COMPLETE
echo %upper% > %lastRevision_path%\%project%_last_revision.txt


:N_EXIT
del %log_path%\A.TMP


exit /B


ECHO ON

----------------------创建结束---------------------------------


SVN还原:

---------------------准备--------------------------

SVN工作目录:D:\Repositories

备份文件目录:W:\MySvnBackup\MyBackupFile

待还原目录:RecoverBackupDir

-------------------创建bat文件---------------------

@echo off
rem --------set svn directory----------
set svnPath=D:\Repositories


rem --------set recover directory----------
set svnRecoverPath=W:\MySvnBackup\MyBackupFile


rem --------set recover project name----------
set svnRecoverName=RecoverBackupDir


cd %svnPath%


rem --------create a new svn----------
svnadmin create %svnRecoverName%


rem --------list all dmp fileName to temp file dirsTest----------
dir /b %svnRecoverPath%\*.dmp > %svnPath%\dirsTest


rem --------load the dmp file to recover project ----------
for /f %%i in (dirsTest) do svnadmin load %svnRecoverName% < %svnRecoverPath%\%%i


rem --------delete the temp file dirsTest----------
del /q dirTest


@echo on

---------------创建结束------------------------------------------------

SVN工作目录:D:\Repositories

备份文件目录:W:\MySvnBackup\MyBackupFile

待还原目录:RecoverBackupDir

svn的备份还原(一)

1、导出: 在windows下,打开命令窗口,进入下列目录: "c:\Program Files\VisualSVN Server\bin\" 执行: svnadmin.exe 输...
  • xiaohan2826
  • xiaohan2826
  • 2014年06月14日 12:12
  • 2007

SVN备份与恢复

SVN代码的备份至少有三种方法,这里只是说下用svnsync命令的备份和恢复过程。       svnsync命令是建立两个完全相同的代码库,属于完整同步备份,因此,如果代码库已经很大了,第一次备份...
  • ssmile
  • ssmile
  • 2014年01月18日 12:39
  • 4584

服务器上的Svn 版本库备份与还原

服务器上的Svn 版本库备份与还原                                 一、完全备份 1.1选择要备份的本地磁盘上的目标文件夹,然后把对应文件夹设置成共享模式。 1.2、...
  • qq_28562059
  • qq_28562059
  • 2016年10月19日 09:16
  • 415

Windows下的SVN备份与还原

Windows下的SVN备份与还原 1.将test2库中的两个jar包备份到库TEST中 命令: 还原命令:、   看结果:只能在SVN客户端看 ...
  • qq_28339335
  • qq_28339335
  • 2016年12月02日 17:23
  • 1062

SVN导出/导入、SVN备份/还原 【小白版】

转自:SVN备份/还原 【小白版】 一、导出: 1.进入svn安装路径bin文件夹下,使用 cd 命令。 在windows下,win+R 键入 cmd 回车 打开命令窗口cmd...
  • nansunshine
  • nansunshine
  • 2016年11月23日 16:57
  • 255

svn备份还原(二)

除去最常用的update,checkout, commit等操作, 最常见的就是对svn版本库的备份和还原。 备份策略 svn备份一般采用三种方式: 1)svnadmin dump 2)sv...
  • xiaohan2826
  • xiaohan2826
  • 2014年06月14日 13:15
  • 618

svn备份还原办法

1、导出: 在windows下,打开命令窗口,进入下列目录: "c:\Program Files\VisualSVN Server\bin\" 执行: svnadmin.exe 输...
  • sanbo49
  • sanbo49
  • 2011年12月28日 10:30
  • 186

SVN服务端的备份还原

1、备份服务端的Svn数据库信息(含有以下配置文件的文件夹) 2、安装Svn的server版本(VisualSVN-Server-2.1.2.msi) 3、运行Svn,进行还原,进行如...
  • andandroid
  • andandroid
  • 2012年07月30日 11:53
  • 355

svn服务器备份与恢复

转帖的,因为我经常要用到,所以也在我的博客上记录一下:svn备份常用命令1、完全备份和增量备份svn。svnadmin   dump  /svn/project/www     > full.svn....
  • zhxin999
  • zhxin999
  • 2009年12月21日 09:05
  • 11492

svn 备份和还原项目

svn 备份与还原
  • sakawa_x
  • sakawa_x
  • 2017年01月02日 22:49
  • 773
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SVN备份还原
举报原因:
原因补充:

(最多只允许输入30个字)