SVN客户端安装使用指南,解决本地磁盘空间不足问题
1、SVN 客户端安装及使用指南Ver 1.1目录目录 21.1 概述 31.2 的安装 31.3 的使用 41.3.1获取 SVN 用户名及修改密码 41.3.2访问 SVN 的方式 51.3.3 认识不同的图标 61.3.4 更新配置库和提交修改 71.3.5 解决冲突 81.3.6 锁 131.3.7 比较差异 141.3.8 获取日志 141.3.9 常用设置项 151.1概述SVN是的缩写,是一种配置管理软件。SVN是典型的/架构,服务器端的搭建和管理请参见SVN服务器安装及管理指南;本文仅介绍一
2、款基于平台的图形化客户端软件的安装和使用。是开源免费软件,其功能非常多,由于篇幅限制,本文仅介绍日常使用中 所涉及的功能。本文所介绍的软件可以到“”目录下载,用户名、密码分别均为RD、yanfa,或者直接上网下载。1.2 的安装a)安装环境要求:该软件的安装环境为Win dows 2000 SP2, Win dows XP或更高级的版本。b)下载并安装 -1.7.7.22907-win32-svn-1.7.5.msi(与服务器不同,客户端仅需要安装一个软件,所以你可以下载最新的版本)到本机任
3、意目录,例如D: Files' ”。安装非常简单,一路Next即可。注意,你需要有管理员权限才能安装这个软件。安装后需要重启系统。在任意界面点击鼠标右键,如果出现如下界面则说明安装成功,所有的命令都是通过 wi ndows资源管理器的右键菜单执行。曲址wi.TSTJ 辭皿 )对于需要使用中文包的用户可以到. net/dow 下载汉化包,例如下载 Lan .7.7.22907-wi n32-zh_CN.msi并安装,安装程序会自动找到之前安装的路径并完成安装。注意汉化包要和Tort
4、的版本相匹配。安装语言包的好处在于可以同时得到 汉化版的帮助文件(注意,没有完全翻译,还有一些乱码,可以和英文版本的对照着看),其帮助文件路径为“.chm ”。打开汉化界面的方法是点击鼠标右键 in gs进入如下界面,在 选项下选择语言为中文(简体)”。可以通过继续下载安装其他语言包的方法增加语言的选择。.V c n D HL ,L 匚 仏乡召-riMSH'向吒lt亡-Ctllj duck fw 1# BVWK H KaIe_
5、 £ I'T*XTi Ibjrr T Ici £*!.O 聆WWH二 I EaLh*=«1 : ?i 5ot=ilA,sY V«r#t * U -3 DiG-le-tdl 3fT rfC*« 执 1.0 liL J»iLAd Ds-fE亚昶讶W口.5J La上zh、忙 vtl *ri口加I hh d4t«f 讥血f11 li*«皿 - KlhxK
6、63; :rit'ts Iai.4iv Tt i*.id- Hla nt匚 ijqt 巳佃1"1审元职由 i1.3 的使用获取SVN用户名及修改密码在访问SVN配置库之前,需要首先获取自己的用户名和密码。请向配置库管理员申请。在获取自己的用户名和密码后,如果需要修改自己的密码,请打开一个网页浏览器窗口,在地址栏输入 “ ”,可以看到如下界面:?-?i«e 吒 $ 卜方 mnu输入自己的用户名和密码后,将看到如下界面:临黒W密Wefc: (-吕壬 ue? I牍
7、j ftdni选择User Admin,然后点击Edit a user进入如下界面,注意,除了密码请不要修改其他内容。在 New 输入需要设定的新密码,并在 new 一栏中重复输入一遍新密码。最下面一行绿色背景的 一栏请输入原来的密码,点击确认退出。 new ni| 1132访问SVN
8、的方式a)认证方式:使用任何方式访问SVN都需要经过认证,如下图所示,如果不希望每次都输入用户名密码,你可以点击“ save authe n选项,让系统记住你的用户名和密码。b)获取本地拷贝:这是最常用的方式之一,点击鼠标右键,在菜单中选择检出( ) ”,将会弹出如下右图所示的界面,在版本库URL中输入配置库地址,目前服务器为“ / ”检出到目录”是指要将本地拷贝放到本机的哪个目录下, 这个可以随意指定。 注意,配置库会随着文件的增多而加大,所以请选择磁盘空间较多的分区。()c)使用版本库浏览器(Repo- ):点击鼠标右键,在菜单中选择版本库浏
9、览器(Repo- ) ”,将会弹出如下图所示界面。该界面类似于的资源管理器,如下图所示,这个浏览器能够很方便地看到SVN配置库的文件目录结构(前提是你有足够的权限),以及文件的属性(这个很重要)。如果你觉得获取本 地拷贝的方式太麻烦,要占用太多的磁盘空间,或者只是看看配置库上是否有这个文件,你完全可以只用版本库浏览器(Repo- )来访问。下面我们就该浏览器的一些功能进行讲解:h时 m雋 $:且e/ETuVK- Rcko/SVII 宋卩 ST 5atTB-?¥frr卜二r巾丿口2 :EQ WA応呻時-rtp i- otc jd
10、s.Q * ± _j 口i -j /e話占 *. n_* lJ Ui4*h:r!二 OZ1QB W血 _) C£ 1EQO _ 259I- _) -t"i T&Qtani SciA-m%薦丰*+1WW «-7-tS jnM&j搐w2D®-7-:k3刈血軸£>7-i9也皿葢12DL>7L?Jt(Ki.Z5对FWS二 m出渝T
11、r*ti>H J LE-L whZE.tjt- .e-j« 陽畔加 1 2牌曲e);FGt氓私护.鬧 r .Hi biJ Hiia Uii rt |i«>*urfc-2 mfig扌才d 5 3 2 ¥ E 仁卜咖m櫥pW垃诞应 Jp.那9|ii4i na 1140-1gdJ7i>H- I - SR-«*霍和诃L堪!Mf題念flww«可必豐掰itMft;汕m._Ji. 开启版本库浏览器(Repo- )的方法:单击鼠标右键,在右键菜单中, 选择版本库浏览器(
12、Repo- )。ii. 界面说明:在浏览器的左侧是SVN配置库的文件目录结构,右侧是选定目录下的文件列表,这里我们能看到文件的许多重要属性。1) 版本:是指文件当前的版本号,即最新文件创建时的版本号。2) 作者:是指文件是由谁创建的,即创建用户的用户名。3) 日期:是指文件当前版本的创建日期。4) 锁定:很重要的信息,该栏为空的时候表示没有锁定,当文件被锁定的时候,可以在这里查到是被哪个用户锁定的。d) Web方式:如果你没有安装 等SVN客户端软件,其实也可以通过Web页面直接访问 SVN,方法是打开一个网页浏览器窗口,在地址栏输入SVN配置库服务器的IP
13、地址和路径,例如“ / ”由于目前服务器禁止匿名登录,你需要输入用户名密码以获取相应的权限。使用这种方式和版本库浏览器(Repo- )类似,但是功能更少,只是简单的列出了文件列 表,且为只读方式。认识不同的图标如果你选择了获取本地拷贝,那么你本地硬盘上将取得一份服务器文件的拷贝,这些文件的属性使用不同的图标来显示,图标如下图所示:呦. *rca±nlv.cps3d±d dEed声豆si l申主K
14、 cps厨1:外龙“ .a) 绿色打勾:表示文件属性正常;b) 灰色打勾:如果你给一个文件设置了svn:needs-lock属性, 会让此文件只读,直到你获得文件锁。具有这个重载图标的文件来表示你必须在编辑之前先得到锁;c) 蓝色加号:代表你已经选择将这个文件加入到配置库中,但是还没有提交,提交后将变成绿色打勾;d)白色红圈感叹号:代表你已经修改了某个文件,该文件和配置库上的版本不一致,如果是文件夹,则表示该文件夹内至少包含一个文件被修改了,如果你将这些文件上传了服务器,则文件/文件夹将变成绿色打勾。e)红色打叉:代表你准备删除某
15、个文件或文件夹,但是还没有提交服务器,提交后这个文件或文件夹将不复存在(注意,只是形式上删除,可以恢复)。f)白色灰圈减号:有一个文件或目录被版本控制系统所忽略。g)黑色黄三角感叹号:说明在更新的过程中出现了冲突。h)小锁:如果你拥有了一个文件的锁,并且 状态是正常,这个图标就提醒你如果不使用该文件的话应该释放锁,否则别人无法修改该文件。i)蓝色问好:这个图标说明文件和目录未被版本控制,但是也没有被忽略。 当你将某个文件直接粘贴到某个本地拷贝的某个目录中时,就会出现这个图标,你可以将其添加到版本库中,或者忽略,或者直接删除(即不添加到版本库中了)。j)注意事项:当一个文件的

16、属性发生更改后,图标也会改变,但是有的时候图标的变化不是很及时,需要等待一段时间,或者多刷新几次。134更新配置库和提交修改a)更新你的本地拷贝:在你的本地拷贝目录下点击鼠标右键,在菜单中选择更新( ) ”,将会将服务器上最新的文件复制到本机上。注意,在每次工作前都应该更新一下,以保证自己工作的文件处于最新状态。更新时会有相应的提示,如下图所示:C:"cl口ur匚亡-SVN . rinis-hEd!B0®| Tt片C :胡EVPMf二 局 du J dua
17、_upda城arlC 站 d曲翱刊i加时曲 如i. i :_i -taf J.,1 '-VTi/ii uhl 讪;3tu J i如上日Ury.nf
18、更新了。 冲突():来自版本库的修改在与本地修改合并时出现了冲突,需要你解决。 合并():版本库中的修改与你的本地修改成功合并。 增加(Added):版本库中新增了文件。 删除():版本库中删除了文件。 b)更新你的版本库浏览器(Repo- )中的文件属性:只需要按F5刷新即可。 c)提交你的修改:只有你使用了本地拷贝才能够将修改提交到配置库服务器中。无论 你是新增、修改、重命名、移动还是删除了文件/文件夹,一种最简单的方式是点 击鼠标右键,在菜单中选择 提交( ) ”,在变更列表中选择自己需要提交 的文件或文件夹。在 信
19、息”栏中可以输入注释信息,说明为什么要修改。lfct; d | .K?】岳L6f 駁2內斛川帚i+if严E "ih" 朋浪星近戶且刃创.建WVK客户端.安装及性.电描南芒该文刁件用壬指导,3祠普通用圧I尿论扩去若31*® 篷性呛叵比迂13.=啦裳圧陞冶E.竝出:垃斗巨£謝全不也血* lz w dj.1 nr u E-LiL'win i FTi碟电 1楸d)撤销修改:如果你想要撤消一个文件自上次更新后的所有的变更,你需要选择该文件,然
20、后点击鼠标右键,选择SVN还原( ) ”,这样,您尚未提交服务器的所有修改就会被撤销。e)注意事项:如果你需要更新或提交所有的更改,请在本地拷贝的根目录下进行,如果只需要更新或提交某个目录内的文件,那么可以只在这个目录下点击鼠标右键进行更新或提交。135解决冲突a)什么是冲突:让我们先来举一个例子,如下图所示,当Hary和Sally同时读取了服务器上的一个文件拷贝,Harry修改后上传了服务器,之后Sally也完成了修改并上传服务器,这时文件就出现了冲突(如果没有配置管理的话,Sally的修改会覆盖Harry的修改)。有两种冲突类型,上述的例子我们称为文件冲突;而如果有 用户移动、
21、重命名、删除一个文件或文件夹,而另一名用户也对它们进行了移动、 重命名、删除或者仅仅是修改时就会发生树冲突。Piw jjjm 打血Rep
22、都是相同的。ii. Harry修改test.doc和test.cgi这两个文件的最前一行,修改后先上传服务器,这时不会有任何问题。iii. Sally修改test.doc和test.cgi这两个文件的最后一行,修改后也上传服务器, 这时服务器会提示提交失败,如下图所示。注意,两个文件都是有冲突的,但是系统在检测到一个文件有冲突后,就直接报错了,也就是说并没有对所有文件是否冲突进行检查。iv. Sally根据提示做了更新操作,出现如下提示。注意,cgi文件属于纯文本文件, 已经被自动合并了,而doc文件属于二进制文件,SVN无法自动合并。于是报了冲突,这个冲突是需要用户解决的。而对于自动合并的文
23、件也不能轻易放 过,因为Harry和Sally的更改本身可能都是正确的,但是合并在一起的时候 就不一定了。v. 更新后,目录下文件会生成两个新的文件,如下图所示,注意test.cgi已经被合并了,合并版本保存在本机上,而服务器上还是Harry提交的版本,因此test.cgi是红圈白感叹号标识,需要提交到服务器上。test.doc是处于冲突状态的,因此是黄三角黑感叹号标识。另外还新生成了两个文件,和test.doc.r39 (这两个文件可以用Word直接打开)。注意这两个文件的命名规则,doc是原始文件的扩展名,r37代表服务器上之前的版本号是37 (这个版本是Harry和Sally更改的基础)
24、。test.doc是在37版本上增加了 Sally的 更改,而是在37版本上增加了 Harry的更改,即当前服务器上 的最新版本。单击test.doc (注意,一定要选中这个冲突的文件),鼠标右键 编辑冲突。然后显示如下界面,这个界面和Word的比较文档是一样的。显示插入的内容是服务器上的版本, 即Harry的更改;显示删除的内容是本机上的 修改,即Sally的修改。在这里,Sally可以接受 Harry的修改,也可以拒绝Harry的修改。当然,在合并之前最好是两个人能够沟通一下。假设双方的更 改都是对的,可以合并则在插入内容上点击鼠标右键接受插入,在删除内容处点击鼠标
25、右键拒绝删除。修改完成后点击保存,这时系统会提示保存文件名称,请找到test.doc所在目录,保存为test.doc,即覆盖原文件。昨甘I册t詔gw* swrt? iuJ -*-* Thr toEUN d ibm Me* U r n Sir -'taeni I 叮flw'lwim于生呻 弭*hw 如"#ro ?pl in .rfl wih 壯i Lir-ws? Yr»j may qWeh -a copy-肿记Jllte- - u t咤 Jfmw madR
26、m沖St'-黔址旳1 Lt 切览 it ¥ 冲百弄【=Ss tEFJd-ny OF Aiiy EO-IEi, Slit吐 冲HU a*Ji See dir Ludut fn Ihr 中工血 Unia产 ..-* n审* ¥韻 imiii亜伸 ue44t im Lx aw f* Cade u Ibr 日吟|如空 5yrt«nA*>!Th*lnM 口咿 3廿世 口n評I Cdi屉 NE|1 督亡匚gruwi;*卜X Ptin
27、tifE;; by Mei土沖亡 H2專丄 I 阿 NnK-flr '" Ab* .r:i lery * Cw 陥强峰 加两 bra* 血 旳耳 邛顾切1科帥严 cgns*'* O5lm* Ivhc imenn c cm>-,“.,亠“ IHimH 34vii.鼠标右键已解决的,弹出以下对话框(如果有多个冲突文件则显示一个列表,请在列表中勾选已经解决冲突的文件),点
28、击确定。之后系统会自动删除test.doc.r37 和test.doc.r39 这两个文件,test.doc的图标显示 为红圈白感叹号,即已经解决了冲突,但是和服务器上的版本不一致,需要提交服务器。viii.ix.鼠标右键SVN提交,将解决的冲突提交服务器。下一次Harry更新本地拷贝的时候,文件会更新到最新状态。由于Harry并不知道存在文件冲突的情况,所以当 Sally完成冲突合并后,如 果有必要应该通知一下Harry。注意,如果Sally发现自己的更改无法与服务器上的当前版本合并,可能需要 撤销自己的修改,即点击鼠标右键 还原。或者 Sally发现Harry的修改不
29、正确,只要保留Sally自己的修改就可以了,那么选择冲突文件后直接点击鼠标右键已解决的,然后提交服务器。c)文件冲突实例2 :在上一个例子中,Harry和Sally对test.cgi修改处不同,如果两人对该文件的同一行进行修改的话, 将无法自动合并。 还是以上一个 例子为模板,Harry先提交,Sally在提示冲突,更新本地拷贝,出现了 3个新文 件,如下图所示:tut . test.cgi.r40 是版本号为 40的文件,即Harry和Sally更改的基础;test.cgi.mine 是Sally更改的文件;是当前服务器上最新的版本,即
30、Harry更改的文件。注意,此时的test.cgi会出现如下字段,
























