Windows下SVN的配置详解

Subversion,简称SVN,是一个开放源代码的版本控制系统。 额. 灰常好用。

准备工作 :
下载:
服务器端程序下载: http://subversion.tigris.org/getting.html#binary-packages

Windows常用客户端TortoiseSVN:http://tortoisesvn.net/downloads

好了。win下 傻瓜式 下一步下一步安装完毕(装完客户端需要重启)。 现在做一下配置一个版本库。

1:创建一个版本库 ,可以在任意一个盘里 右键–选择创建


当然, 也可以使用命令行

2:导入项目到版本库
现在有一个项目(假设test),我在D盘建立一个文件夹test,然后test文件夹下建立trunk, branches,tags 文件夹,trunk存放项目代码,主线,branches存放代码分支,tags 存放标签,当然,那只是建议,建议是好的,你也可以直接就在test下放代码,哥就是。
导入项目,在test文件夹上右键 导入

也可以命令行导入项目:
svn import 要导入 导入地址

OK,现在可以在本机checkout了

可是 checkout的还是本地的绝对路径,不能发布到网络与svn地址. 这个,就用svnserve 的选项, 指定一个路径。
svnserve -d -r d:/svnTest

现在checkout 的时候就可以用 形如 svn://127.0.0.1/trunk 的了。

3. 让svnserve作为Windows服务
上一步完后,命令行窗口要不关闭才能服务一直启动,现在系统是windows,所以,要把 svnserve做成一个服务来才更加方便。使用命令行工具SC.EXE定义新的服务。
C:\> sc create svntest
binpath= “\”C:\program files\svn\bin\svnserve.exe\” –service -r C:\repos”
displayname= “Subversion Server”
depend= Tcpip
start= auto

图中 红线圈起所示部分, 要注意 引号与空格呀, 红线之上就是少了一个空格而错误。

4.设置用户名密码与访问权限
现在就可以网络上访问了。 其他电脑chekout一份 出来 svn://IP地址/trunk 了。 但是要给不同用户 设置 用户名与权限。 找到你创建版本库文件夹下的conf文件夹, 里面有 authz passwd svnserve.conf 3个文件

authz文件最终设置完成的样式为这样:
[/]
tan=rw
*=r
[/trunk]
lzc=rw
xiaoliu=rw
*=r
[/] 代表下面的用户名可以操作该版本库下的所有项目,[/trunk]代表下面的用户只可对trunk项目进行读写操作,就以上图解释:tan用户可以对该版本库的所有项目进行读写,而其他用户只能是读,不能进行写的操作,lzc和xiaoliu用户只可以对版本库里的trunk项目进行读写,其他用户对这个项目都只能是读而不能写,TAN用户也不可以对DELPHI项目进行写操作,因为在最后面用了*=R,切断了父权限,而*=R不能省去,省去会出错,如果设*= ,则是不能读该项目,就是打开版本库的时候看不到该项目下的文件。

Passwd (设置用户名和密码) 文件最终设置完成的样式如下:
[users]
lzc= 123
xiaoliu= 123
cc= 123
左边是用户名,右边是该用户名的密码。

svnserve.conf 的设置格式,找到20行# password-db = passwd 27行 # authz-db = authz 去掉前面的注释。
12,13行 改成
anon-access = none
auth-access = write

好了。 设置完了,现在可以 在客户端 checkout commit Update 了。具体的如何使用 待下回分解。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows下实现SVN自动双备份可以通过编写批处理脚本来实现。以下是一个简单的方案: 首先,创建一个文本文件,使用扩展名为.bat,例如backup.bat。 在批处理脚本中,我们可以使用svnadmin dump命令备份SVN仓库。这个命令会将整个仓库备份为一个独立的文件。 为了实现自动双备份,我们可以将备份文件分别保存在两个不同的目录中。我们可以选择在两个不同的硬盘或者存储介质上保存备份文件,以确保数据安全。 以下是一个示例的批处理脚本代码: ``` @echo off setlocal set REPO_PATH=C:\path\to\your\repository set BACKUP_PATH_1=D:\backup\path\1 set BACKUP_PATH_2=E:\backup\path\2 set TIMESTAMP=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2% svnadmin dump %REPO_PATH% > %BACKUP_PATH_1%\backup_%TIMESTAMP%.svn svnadmin dump %REPO_PATH% > %BACKUP_PATH_2%\backup_%TIMESTAMP%.svn endlocal ``` 在上面的代码中,我们首先设置了SVN仓库的路径(REPO_PATH),然后设置了两个备份目录的路径(BACKUP_PATH_1和BACKUP_PATH_2)。接着我们通过调用svnadmin dump命令对SVN仓库进行备份,并将备份文件保存在指定的备份目录中。在备份文件的文件名中,我们添加了时间戳以确保每次备份文件都有唯一的名称。 最后,我们使用endlocal命令关闭本地变量的作用域,确保变量不会对其他程序产生影响。 如果你想要在特定的时间间隔内自动执行备份,你可以使用Windows任务计划程序来调度批处理脚本的运行。通过配置任务计划程序,你可以指定备份脚本的执行时间和频率,从而实现自动双备份的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值