配置管理(SVN)
CM:configuration management 配置管理人员
什么是SVN
SVN
--Subversion
--是一个开放源代码的版本控制系统
--时下流行的有SVN和GIT
|
每日先从服务器中get当前最新的代码
每日结束前把完成的代码commit到服务器中
为什么要学习SVN
- 代码管理混乱
- 备份多个版本,占用磁盘空间大
- 解决代码冲突困难
- 容易引发bug
- 难于追溯问题代码的修改人和修改时间
- 难于恢复至以前正确版本
- 项目版本发布困难
等等
Repositories路径下的配置文件:
1.建立权限文件
2.钩子文件 ,起到自动编译功能,需要脚本编译能力,涉及到自动编译的放在这个文件夹
3.锁文件夹
3.1.上锁的放在上面 没锁的放在下面
图形命令
1.checkout(下载)
新建空文件夹svntest1
双击打开文件夹,在空白处右键点击checkout
输入URL,校对下载文件夹路径,点击OK
显示更新目录>新增三个txt文件>完成,点击ok
文件夹出现服务器下载的文件
2.add(新增文件)(在下载的文件夹新增文件,服务器并没有)
新建一个文件(此时服务器并没有此文件)
在新建的文件上右键>torroisesvn>add,新增
显示已经成功添加,符号编程+号,但服务器还未存
右键新增文件,点击svn commit
显示新增文件,点击ok,完成上传
显示新增文件上传完成
3.commit(上传:add或修改文件后)
对文件进行修改,并保存
文件表示改变,提示文件与服务器上不同步
右键commit上传>ok,同add操作
4.update(下载更新)
在未更新的文件夹右键update
显示更新,增加两个文件,点击ok完成update
5.edit conflict
在服务器文本已经和本地文本不同步的情况下,对文件进行上传时使用
在未同步的文件上编辑保存
上传commit,显示错误,out of date 与记录不同
点击update
显示错误,点击ok,再在新弹出的窗口点击cancel
mine是自己的修改文件 r13和r14数字小的是自己的,大的是服务端最新的文件
在感叹号的文件上右键 tortoise>edit conflct,进入修改编辑器
修改完成点击mark as resolved,完成,关闭
变成红色感叹号,再次上传,即可成功
6.get lock>show log或者直接浏览服务器>release lock
在操作文件上右击>tortoisesvn>get lock
输入备注留言,点击ok
显示完成
客户端登录可查看锁定信息
别的账户修改 无法上传
这是可以选择右键release lock 解锁 或者是 锁定用户 修改上传 自动解除锁定
7.revert(返回刚修改前的内容)
点击revert ok 即可
注:返回的只是当前客户端的旧版本,如果服务器与客户端不同步,也不会直接返回并与服务器同步。
8.showlog(看当前文件修改历史记录)
右键选择show log,即可出现历史记录
9.rename(重命名) commit上传时 要选中文件夹 而不是选中文件
右键选中rename,输入新名字
状态符号变成➕号
右键文件夹空白处(不要选中文件)>commit>显示出旧文件名文件被删除,新增新文件名文件,点击ok
完成
10.delete (删除) 删除后要提交
右键>delete删除文件,之后右键commit提交,显示被删除的文件状态为delete
删除成功
11.import(导入)
在需要往服务器新增的文件或文件夹(文件夹必须非空)上,右击>import,输入目标仓库URL地址,点击OK
显示完成
注:如果文件夹下只有一个文件,那么只会上传单个文件,如果选中文件夹下有包含文件夹,会连文件夹一同上传
12.export(指定目标文件夹,导出的文件不在版本库范围内)
右键空白处选中export,输入URL和空白文件夹,点击ok
显示导出
导出的文件未显示状态符号,与服务端并无关联
13.update to revision(更新版本)
找到要更新的文件右键选择update to revision,选择showlog查看版本
选择需要返回的版本,点击Ok
再次点击ok,完成
14.diff(比对)
选中文件右击,有两种选择模式
Previous version 与以前的版本进行比对
或者
diff later,比对两个文件不同的地方
此外,也可以直接框选两个文件右击选择diff比对
15.relocate(重新指向服务器的地址)
搬运服务器,ip变更后使用
16.tags(建立分支)/merge(合并分支)
多是开发使用
命令模式操作
1.创建版本库
移动到repositories,命令创建
2.创建账户
3.授权匿名用户访问权限为read;授权授权用户权限为write
4.访问数据库需要密码
5.访问数据库需要用户
6.创建组
7.配置个人用户权限
8.配置组权限
9.dos窗口启动仓库(仓库暴露repositories下所有文件)
回车 不出现提示信息 已经启动
10.Checkout dos指令
>svn checkout https://服务端IP地址/仓库名
11 add文件(dos步骤)
12.dos创建文件并commit到仓库的步骤
注:conf文件夹下authz文件 “* = ”代表 其他用户 = 无权限 等于号后面要加一个空格