SVN简单使用

这是我从网上收集的,然后整理了一下!
在此谢谢那些提供这些资料的人!


一、获取资源(我用的是1.4)
(1)svn-1.4.2-setup.exe SVN 服务器端
http://subversion.tigris.org/
(2)TortoiseSVN-1.4.2.5840-svn-1.3.0.msi SVN 的客户端
http://tortoisesvn.tigris.org/
(3)LanguagePack_1.4.2_zh_CN.exe tortoise 的语言包 (能看英文的话就不用下)
(4)SVNService.zip SVN 的一个第三方工具,将 SVN 用做 windows 后台服务 (这个现在新一点的版本都有的)

二、安装
上面的 1 、 2 、 3 均为直接安装即可,注意在安装完1再安装3的时候要重启一下,然后将4 解压到1 中安装目录下的 bin 目录中。至此安

装完毕

三、配置
第一种:(这种方法没试成功,总报错误:期望文件系统格式“2”;发现格式“3”)
用 TortoiseSVN的客户端工具选择一个空的文件夹右键 ---- à在此创建文件库

。选择默认的格式后确定,一个 SVN 的仓库文件就创建完毕。然后转到项目或者你想加入版本控制的文件或者文件夹上面,点右键选择导入,

在弹出的对话框里面输入仓库地址,执行导入完毕后一个完整的文件版本诞生了。
注意:在导入时2中的客户端默认是导入当前文件夹的子文件夹,所以如果你想将当前目录也导入的话,请将他放入一个文件夹内再执行导入操

作。
另一种方法(我用的这一种)
在svn仓库根目录下用svnadmin create projectname
然后是仓库的配置:转到仓库目录的 conf 中,寻找 svnserve.conf 文件并将其中的
[general]
anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository
前面的 # 号去掉,然后去掉他前面的空格。保存。
这里的意思是: anon-access 指匿名访问的权限,可以是read,write,none,默认为read,这个建议配为none
auth-access 指认证用户的权限,可以是read,write,none,默认为write
password-db 指密码数据库的路径,去掉前面的,存的是认证用户的用户名和密码,username=passwd
然后是修改 passwd 文件
1. 去掉 [users] 前面的 #, 否则 svn 只能以匿名用户登录,客户端不会出现登录窗口,除非你的 anon 不为 none, 否则将返回一个错误。
2. 添加用户名和密码 username=password

四、启动 SVN 服务器
1:对于单个代码仓库
启动命令 svnserve -d -r 文件夹路径 --listen-host 192.168.100.200
其中 -d 表示在后台运行, -r 指定服务器的根目录,这样访问服务器时就可以直接用 svn:// 服务器 ip 来访问了。如果服务器有多 ip 的

话 --listen-host 来指定监听的 ip 地址 . 我们可以在 svn 客户端中通过 svn://192.168.100.200 来访问 svn 服务器
2:对于多个代码仓库
我们在启动时也可以用 -r 选项来指定服务器根目录 , 但访问时需要写上每个仓库相对于 svn 根目录的相对路径 . 比如 , 我们有两个代码

仓库 /home/repoa 和 /home/repob, 我们用 svnserve -d -r /home --listen-host 192.168.100.200 来启动 , 那么在客户端访问时可以用

svn://192.168.100.200/repoa 和 svn://192.168.1.200/repob 来分别访问两个项目启动完成以后 , 我们可以用 ps aux|grep svnserv 来查

看是否存在 svnserve 进程 .

另一种方法(我用的是这一种,比较方便)
SVN 1.4可以直接创建Windows Native的服务
sc create svnserver binpath= "C:/Program Files/Subversion/bin/svnserve.exe --service -r d:/repository/svn" displayname= "Subversion Repository" depend= Tcpip start= auto
sc description svnserver "Subserverion Version Control System"


五、开放服务器端口
svn 默认端口是 3690 ,你需要在防火墙上开放这个端口。也可以通过 svnserve 的 --listen-port 选项来指定一个已经开放的其他端口 ,

不过这样的话客户端使用也必须家上端口 , 如 svn://192.168.100.200:9999/.......

六:初始化导入
来到我们想要导入的项目根目录,比如说D:/repository/svn
1. 右键->TortoiseSVN->Import…
2. URL of repository输入”svn://localhost/trunk” 如果不是本机localhost改为IP,trunk是你定的版本服务目录
3. ok
完成之后目录没有任何变化,如果没有报错,数据就已经全部导入到了我们刚才定义的版本库中。


七:基本客户端操作
1:取出版本库到一个工作拷贝:
来到任意空目录下,如E:/svndemo/wc1,运行右键->Checkout,在URL of repository中输入svn://localhost/trunk,这样我们就得到了一份

工作拷贝。
2:提交客户端修改到版本库中:
来到你的工作目录,运行右键-〉SVN Commit则你的改动更新到服务器上,为了再出现问题时能快速的找到问题,建议大家提交时在log中写上

注释。为防止大家同时对一个资源进行修改,大家在提交的时候可以对要修改的文件加锁,提交栏的左下方打勾。
3:更新版本库中的修改到客户端
来到你的工作目录,运行右键-〉SVN Update则将版本库中的改动更新到你的工作目录中。这时可能会出现一些问题,比如版本库中的改动可能

会与你的改动合并或者发生冲突,当发生冲突时,则客户端不更新,你需要手动选择使用哪个版本。其他的情况不必考虑。
4:其他的一些常用操作
有更多的功能在右键-〉 TortoiseSVN中,如果看的懂的话基本会用的,常用的有show log查看日志;Check for modifactions查看版本库改动

;resolved选择在冲突后你要的版本;Update to revision 选择要更新到哪个版本,至于add,delete,merge等就是字面意思。

 

八:附: svnserve [ 选项 ]


有效选项:


-d [--daemon] :

后台模式


--listen-port arg :

监听端口(后台模式)


--listen-host arg :

监听主机名或 IP 地址(后台模式)


--foreground :

在前台运行(调试时有用)


-h [--help] :

显示这个帮助


--version :

显示版本信息


-i [--inetd] : inetd

模式


-r [--root] arg :

服务根目录


-R [--read-only] :

不赞成;使用档案库配置文件


-t [--tunnel] :

隧道模式


--tunnel-user arg :

隧道用户名(模式是当前用户 UID 的名字)


-T [--threads] :

使用线程代替进程


-X [--listen-once] :

监听一次(调试时有用)
 

有问题?直接google! <script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_sdo.js" type="text/javascript"></script>

<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值