Svn介绍
(1)subversion(简称svn)是近年来崛起的版本管理软件(源码),是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
(2)svn服务器有2种运行方式:独立服务器和借助apache。
svn:// http://
svn最流行的客户端是tortoisesvn 。
svn运行原理
SVN的基本工作思路是:
在一台服务器上建立一个源代码库(仓库),库里可以存放许多不同项目的源程序(仓库)。由源代码库管理员统一管理这些源程序(仓库)。每个用户在使用源代码库之前,首先要把源代码库里的项目文件(仓库)下载(checkout)到本地,然后用户可以在本地任意修改,最后用svn命令进行提交(commit),由svn源代码库统一管理修改。这样,就好像只有一个人在修改文件一样,既避免了冲突,又可以做到跟踪文件变化等。
SVN解决冲突/合并
1,如何使用svn来解决,文件被多人修改后的合并(冲突问题)
2,先模拟冲突情景:
小白是项目经理,创建项目weibo的最初源代码,小黑修改文件后,出现冲突:
步骤:
(1)先在服务器创建仓库(sns),修改仓库的访问权限
(2)小白从服务器checkout一份sns项目,提交并修改文件
(3)小黑也checkout一份文件并修改
SVN常出现的符号
(1)+ 号:该文件已经被SVN客户端管理,但是还没有提交到svn服务器去
(2)绿色的钩钩表示,文件已经成功提交到服务器端
(3)红色!号表示,本地有某个文件没有提交到服务器端(即没有完全同步)
(4)黄色感叹号,表示提交的过程中出现冲突
(5)红色表示此文件在本地修改过,还未提交到仓库
SVN的使用细节
(1)版本回溯 右击鼠标---update toreversion;
(2)日志记录,提交日志限定必填
右键---properties----new----logminisize
(3)误删除文件的恢复操作
update即可
(4)过滤某个或某些文件
addto ignore list remove
(5)导出项目
export
SVN用户权限的配置管理
需求:
有3个用户,admin,xiaomao,xiaogou
要求admin有读写的权限,
xiaomao xiaogou有读的权限,没有写的权限
其他用户什么权限都没有
SVN用户权限的配置管理
步骤:
1,先修改 svnserve.conf
anon-access= none; 表示匿名用户什么权限都没有
auth-access= write;表示授权用户最高权限是write
password-db= passwd 密码文件在passwd
2,修改passwd文件
配置3个用户的密码
3,用户组的配置
authz-db =authz
SVN开机自启动批处理文件
安装服务:svn-install.bat
@echo off
sc create MYSVN binPath="E:/svnserver/server/bin/svnserve.exe -r E:/svnserver/myrepository--service" start= auto
net start MYSVN
@pause
SVN开机自启动批处理文件
卸载服务:svn-remove.bat
@echo off
net stop MYSVN
sc delete MYSVN
@pause
SVN和zend studio的整合
从SVN导出数据到zend studio,zend studio作为客户端
右击---import---project from svn---下一步
(2)提交 项目到SVN:
右击---team---