visual svn把项目服务端保存在哪里了,备份的时候备份哪个文件夹?
问题一:
具体路径是在检出的时候设置的,如果不知道的话,可以通过电脑全盘搜索“svn”文件进行svn检出路径定位(因为所有的svn文件都有有一个svn文件)。
问题二:
备份的时候,先复制项目到想备份的位置,全项目搜索“svn”文件,之后删除此类型的所有问题,备份剩下的文件即可。
如果不要求增量备份的话,把服务器上存放版本库的整个文件夹复制到另一台机器就行了
如果要求增量备份的话,先在另一台机器上架设SVN服务器,创建一个空的版本库,通过svnsync init指令将此版本库和源版本库关联,然后设置一个定时任务,定时执行svnsync sync指令,实现定时将最新内容同步到另一台机器上。
SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
SVN的作用:SVN是一种技术性更加安全的产品,的实现了系统和控制两方面的结合。一方面可以将系统整体的安全功能有效地分布在分支系统中,进而保证分支系统能正常运行,从而使各分支系统能够互补,最终在系统整体性的安全性得以保障,通过均衡原则实现最终追求安全的目的。
扩展资料:
SVN服务器既具有CVS所具有数据储存的优点,像是信息资源存储后会形成资源树结构,便于存储的同时,数据一般不会丢失,同时又拥有自己的特色。SVN是通过关系数据库及二进制的存储方式,同时解决了既往不能同时读写同一文件等问题,同时增添了自己特有的“零或一”原则。
-版本控制
-SVN
同步程序思路:用户提交程序到SVN,SVN触发hooks,按不同的hooks进行处理,这里用到的是post-commit,利用post-commit到代码检出到SVN服务器的本地硬盘目录,再通过rsync同步到远程的WEB服务器上。
知识点:
1、SVN的hooks
# start-commit 提交前触发事务
# pre-commit 提交完成前触发事务
# post-commit 提交完成时触发事务
# pre-revprop-change 版本属性修改前触发事务
# post-revprop-change 版本属性修改后触发事务
通过上面这些名称编写的脚本就就可以实现多种功能了,相当强大。
2、同步命令rsync的具体参数使用
3、具有基个语言的编程能力bash python perl都可以实现
post-commit具体实现细节
post-commit脚本
编辑文件:sudo vim /home/svn/fitness/hooks/post-commit
注意:编辑完成post-commit后,执行:sudo chmod 755 post-commit
内容:
#!/bin/sh
export LANG=zh_CNUTF-8
sudo /usr/bin/svn update /var/www/www --username mirze --password 123456
注意:svn仓库文件夹的other必须要有执行权限不然脚本无法执行。SVN update 之前一定要先手动checkout一份出来,还有这里一定要添加用户和密码如果只是手动一样会更新,但自动一样的不行。
0条评论