创建仓库指令
盘符:\路径\bin\svnadmin.exe create d:/svn/app/文件夹名启动服务指令
盘符:\路径\bin\ssvnserve.exe -d[独立端口运行] -r[具体仓库目录] d:/svn/app与仓库取得联系
在开发者本地工作目录点击右键--->checkout指令输入SVN主机地址+仓库名输入开发者本地工作目录地址本地提交新文件给仓库(单个提交)
① 在文件上点击右键--->svn--->add //作用:.svn对该新文件形成管理② 在文件上点击右键--->commit //作用:把文件提交给svn仓库开启仓库匿名账号权限
打开对应仓库下conf/svnserve.conf开启“anon-access = write”(前面不能有空格)文件颜色标识
① 蓝色加号:本地的.svn对该文件有形成管理(远程仓库 还没有该文件记录)② 绿色对号:正常文件,本地文件、.svn管理的版本文件、仓库文件 三者内部内容一致③ 红色叹号:表示 本地文件 与 .svn管理的文件内容不一致(用户自己修改了该文件)④ 黄色叹号:表示该文件正处于冲突状态⑤ 蓝色问号:新建的一个文件,本地.svn 和 远程仓库 对该文件都没有记录仓库内部查看已经提交的文件
对应仓库下db/revprops:存储日志目录db/revs:存储文件内容目录svn常见操作
① checkout: 检出动作,执行同时会把仓库全部文件更新到本地② update: 把仓库最新的程序文件更新到本地③ commit: 把本地文件提交给svn仓库本地提交新文件给仓库(多个提交)
空白处点击右键--->commit(会把新文件的add和commit指令集成起来)更换SVN主机名地址
方法一:删除工作目录下的.svn文件,重新checkout方法二:在工作目录空白处点击 右键-->svn-->relocate同一文件切换不同版本
右键-->svn-->show log 查看一个文件的全部版本右键-->svn-->update to revision,切换查看文件其他版本内容SVN冲突解决
代码不在同一处:执行update指令,使得服务器新版本与本地旧版本做融合操作,之后再继续commit提交代码在同一处(行)regsiter.php.mine: tom本地文件在update之前的效果regsiter.php.r14: 是文件14版本的效果regsiter.php.r15: 是文件15版本的效果以上3个文件理解后直接删除,否则影响本文件commit提交给合并内容做整合 打开对应仓库下conf/svnserve.conf关闭匿名账号设置anon-access=none,(不要在前边设置#号)配置文件引入password-db = passwd 文件设置账号密码authz-db = authz 设置账号权限打开对应仓库下conf/passwd添加用户名密码用户名 = 密码打开对应仓库下conf/authz
设置账号权限# 给仓库设置操作权限[仓库名:/]# 给用户设定权限 r:读 w:写用户名 = rw#除了给定用户,其他用户没有权限* = 注意:SVN更改配置文件无需重启服务打开对应仓库下conf/passwd
添加组员1 = 密码组员2 = 密码…打开对应仓库下conf/authz组名 = 组员1,组员2,…@组名 = rw设置开机启动服务
sc create 服务名称 binPath= "svn服务器端安装目录/bin/svnserve.exe -r 服务仓库地址目录 --service" start= auto1、使用show log查看员工的工作情况。
2、打开settings?saved data,选择clear来清除各种缓存。3、关闭匿名账号的正确方式:anon-access = none4、使用 Diff with previous version来查看当前版本和上一版本文件的差异。设置钩子功能
复制仓库下hooks文件夹下post-commit.tmpl改变后缀为batSET SVN="SVN服务端目录/bin/svn.exe"SET DIR="要自动更新的目录(与仓库取得联系)"(call %SVN% update %DIR% --username 账号 --password 密码)