简单记录一下svn server的搭建和使用过程,免得下次又忘了
1.安装subversion最新版本,目前1.4.5
2.建立版本库根目录,如d:/svnrepos (所有项目的版本库目录以此为父目录)
3.选择建库方式,每项目一版本库(版本独立,此处采用),一版本多项目(如比较相关的项目)
如此,可在d:/svnrepos目录下建立projectdemo(项目名)版本库
>svnserve create prjdemo
4.将subversion作为windows服务运行,使用sc create 命令,如
sc create svnserve binpath= "\"E:\subversion\bin\svnserve.exe\" --service --root d:/svnrepos" displayname= "Subversion" depend= tcpip start= auto obj= "NT AUTHORITY\LocalService"
首次运行服务(以后自动运行):>net start subversion
5.设置具体版本库的用户及权限控制,如prjdemo项目,在d:/svnreposprjdemo/conf目录中的文件设置
6.为项目版本库建立svn基本的trunk、tags、branches目录并导入,如prjdemo项目:
在本地建立文件夹包含上述三目录,使用import命令导入或使用tortoiseSVN导入
注:对于出现的“svn write-lock错误”云云的,将上述步骤4中已建立的service删除(sc delete svnserve),将命令后部的obj=...云云删除,再行执行
8.建立初始忽略列表(ignore-list),将server上trunk目录内容check out到本地,为特定文件类型建立忽略列表
此步骤也可放在步骤7之后,将import的项目check out出来,再行建立
7.初始导入本地项目,将本地如f:\....\prjdemo目录中内容(本地项目)使用import命令或是tortoiseSVN导入svn server的prjdemo/trunk目录,如svn://hostip/prjdemo/trunk
8.check out一份本地拷贝,正常svn运作周期开始
update 本地拷贝
alter 修改本地内容(正常工作)
update -> resolve confict
commit
.....为特定版本建立tag(其实就是将特定版本考入tags目录一份)、分支操作
注一点,subversion的版本号是针对整个版本库而非带个文件的
至此,基本版本搭建、使用就结束了,对于版本库的备份可参考文章
svn管理员配置,其中介绍较为详细