svn设置忽略文件类型 svn忽略文件夹( 二 )


③没有修改,过时版本
这个文件没有修改,但是版本库中有其他终端提交的修改 。此时当前工作副本的版本比服务器端的版本落后了,我们称之为“过时” 。对当前文件的 svn commit 不会发生任何事,而 svn update 会让工作目录中的文件更新至最新版本 。
④本地修改,过时版本
服务器端存在没有更新到本地的修改,导致当前版本过时 。如果这个文件在本地有未提交的修改,则无法提交,对它执行svn commit 会产生“out-of-date”错误 。
此时应该先尝试更新本地文件 。更新时SVN会尝试将服务器端的更新与本地文件进行合并,合并的结果有两种可能:一个是服务器端和本地修改位于文件的不同位置,合并成功;另一个是服务器端的修改正好和本地修改位于同一个位置,发生冲突 。
将工作副本整体回复到某一个历史版本 ①假设当前版本为12,想要取回版本9
②执行svn update命令
③这里需要注意的是,SVN版本号并不是对某一个文件进行编号,而是对应整个版本库总体状态的一个“快照”,取回某个版本不是取回版本号对应的某个文件,而是整个项目的一个快照 。
4.6 将某个文件恢复到某个版本中的状态,同时不涉及其他文件 ①假设想要取回pp.txt在版本10时的状态
②执行svn update命令
③综合这两个例子,我们可以认为版本号和文件名构成了一个横纵坐标系,通过文件路径和版本号定位其在某一个时刻的状态 。
单一版本库权限配置 匿名访问:前已述及 授权访问 ①要设置授权访问就需要创建用户,并为用户设定权限
②打开授权访问的配置
[1]打开D:DevRepositorySubversionERPconfsvnserve.conf
[2]将第19行anon-access = write注释掉:# anon-access = write
表明该版本库不接受匿名访问
[3]将第20行# auth-access = write注释打开:auth-access = write
表明该版本库使用授权访问
[4]将第27行注释打开:password-db = passwd
表明使用同目录下的passwd文件保存用户信息
[5]将第36行注释打开:authz-db = authz
表明使用同目录下的authz文件保存权限信息
[6]打开passwd文件创建用户
[7]打开authz文件:#后面注释的是例子
<1>创建用户组
<2>指定路径,给用户和用户组授权
<3>权限的继承性:父目录设置的权限,对子目录同样有效——除非子目录进行了更为具体的设定
这个例子表示当前版本库下的subDir目录只有userOther有读写权限,其它用户无任何权限
多版本库共享配置 在版本库根目录D:DevRepositorySubversion下创建commConf目录 将未修改的authz和passwd文件拷贝到commConf目录下 修改需要设置权限的版本库的svnserve.conf文件 ①password-db = ../../commConf/passwd

推荐阅读