您好,请问能详细解说一下windows下SVN备份吗?如何详细操作?谢谢您
1个回答
展开全部
SVN有两种备份机制:
1、hotcopy,可以实现增量或全库的热备,具体的指令参数可以查看svn hotcopy的帮助;
2、svnsync,本用作svn服务器间的同步,也常被用作备份。我个人喜欢这种备份方式,我详细说一下这种方法吧。
svnsync是用作将源服务器的某个版本库同步到备份服务器,同步完成后两个服务器的内容是完全一样的,免去了将hotcopy的结果进行还原的操作。
我一般将这个命令放在post-commit这个钩子里(服务器端该版本库hooks文件夹下post-commit.bat),这样的话每次有人进行commit操作就会触发这个钩子,就会自动执行同步操作,这样就实现了实时备份。
要用svnsync实现实时备份需要这么操作:
1、在备份服务器(其实也可以是同一个服务器上的另一个版本库,比如源版本库是放在D盘上,备份版本库我放在移动硬盘上)上创建备份版本库,空的,什么都不要添加,配置该版本库的权限为只有用于备份的ID可以读写,其他人顶多给个只读权限,绝对不要给别人写的权限,因为一旦有人往这个版本库做了commit操作,就会无法继续同步了。
2、给备份版本库的hooks文件夹下加一个pre-revprop-change.bat钩子,钩子内容就一句exit 0
3、执行svnsync init操作,将源版本库、目标版本库关联起来
4、在源版本库的hooks文件夹下加一个post-commit.bat钩子,内容一般两句就够了:
svnsync sync XXXXXXXXXXXXXXX
svnsync copy-revprops XXXXXXXXXXXXXXX
关于svnsync init、svnsync sync、svnsync copy-revprops 后面的参数,查看随机帮助吧。
1、hotcopy,可以实现增量或全库的热备,具体的指令参数可以查看svn hotcopy的帮助;
2、svnsync,本用作svn服务器间的同步,也常被用作备份。我个人喜欢这种备份方式,我详细说一下这种方法吧。
svnsync是用作将源服务器的某个版本库同步到备份服务器,同步完成后两个服务器的内容是完全一样的,免去了将hotcopy的结果进行还原的操作。
我一般将这个命令放在post-commit这个钩子里(服务器端该版本库hooks文件夹下post-commit.bat),这样的话每次有人进行commit操作就会触发这个钩子,就会自动执行同步操作,这样就实现了实时备份。
要用svnsync实现实时备份需要这么操作:
1、在备份服务器(其实也可以是同一个服务器上的另一个版本库,比如源版本库是放在D盘上,备份版本库我放在移动硬盘上)上创建备份版本库,空的,什么都不要添加,配置该版本库的权限为只有用于备份的ID可以读写,其他人顶多给个只读权限,绝对不要给别人写的权限,因为一旦有人往这个版本库做了commit操作,就会无法继续同步了。
2、给备份版本库的hooks文件夹下加一个pre-revprop-change.bat钩子,钩子内容就一句exit 0
3、执行svnsync init操作,将源版本库、目标版本库关联起来
4、在源版本库的hooks文件夹下加一个post-commit.bat钩子,内容一般两句就够了:
svnsync sync XXXXXXXXXXXXXXX
svnsync copy-revprops XXXXXXXXXXXXXXX
关于svnsync init、svnsync sync、svnsync copy-revprops 后面的参数,查看随机帮助吧。
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询