SVN说明

TortoiseSVN说明

  1. TortoiseSVN简介

TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录,许多人将 Subversion 和版本控制系统看作一种“时间机器”。文件保存在中央版本库,除了能记录文件和目录的每次修改以外,版本库非常像普通的文件服务器。用户可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。

  1. TortoiseSVN功能说明及基本操作
    1. 检出源文件到本机

   在本机创建项目文件夹,右键点击“SVN checkout...”即可,如图1所示,弹出如图2的窗体,设置好后点击“OK”即可检出SVN库里的文件;

 

       

注:

  1. Checkout Depth分为四个选项,“Fully recursive”、“Immediate children, including folders”、“Only file children”、“Only this item” ,默认为第一项即可;
  2. 文件左下角的小图标显示了文件的当前状态,一些常见的图标及其含义如下表所示:

图标显示

定义

绿底白对勾

正常

红底感叹号

已修改

黄底感叹号

版本冲突

灰底白对勾

只读文件夹

红叉

已删除

锁头

被锁定

蓝色加号

新添加

黑色问号

未修改

    1. 更新本机代码与SVN服务器上最新的版本一致

      只需要在预更新的本机文件(夹)上点击右键或在该文件(夹)下的空白处点击右键,点击“SVN Update”即可,如图3所示:

    1. 上传文件到SVN服务器

对于修改后的文件:只需要在预提交的文件(夹)上点击右键或在该文件(夹)下的空白处点击右键,点击“SVN Commit”即可,如图4所示, 左下角显示“绿底白对勾”图标即表示提交成功;

对于新增文件:需要先将预上传的文件(夹)添加到SVN工作目录中来,右击空白位置如图5所示,然后右击文件(夹)再点击“SVN Commit”即可,左下角显示“绿底白对勾”图标即表示提交成功;

  

                         图4                                       图5  

    1. 版本对比

查看历史记录,主要是查看文件或文件夹的提交历史,如谁、什么时间、提交了哪些文件或者文件夹;

两种方法:1)在SVN对应的文件夹的空白处右击,选择“TortoiseSVN”—>“Show log”,如图6所示;选择“Show log”后跳出日志信息,如图7所示;双击“路径”即可查看2个版本的文件对比;

          2)选中需要查看历史记录的文件或者文件夹,选择“TortoiseSVN”—>“Diff”,如图8所示;

 图6                                             图7

图8

  1. 常见问题处理措施

问题1:将文件checkout(检出)之后,没有出现SVN的图标,是怎么回事?

解答:有些时候在客户端Checkout 文件后,SVN的系统图标也会不显示,可以执行一下“Clean up”,就会出现SVN的系统图标。

问题2:为什么添加的文件,别人看不到,版本库里也没有?

解答:最可能的原因是,只是执行了“Add”(增加)而没有“Commit”(提交),这样只是在本地注明某个文件是预定要增加的,而没有实际添加到版本库中,要添加到版本库必须执行“Commit”。 没有绿色对勾的文件不会被commit。删除文件也是一样。

问题3:“Commit failed。……You have to update your working copy first”提交失败,需要首先执行更新操作。

解答:多人同时修改同一文件,在提交前其他人已经抢先提交到SVN服务器中,导致该错误;解决方法:对工作复本中的文件进行更新即可。

问题4:更新时提示文件发生冲突:“One or more files are not a conflicted state。”

解答:多人同时修改同一文件的同一部分,SVN无法自动进行合并,会导致该错误;

解决方法:对工作复本中的文件和服务器的文件进行比较,手工合并即可。

问题5:Working copy’**’locked. Please execute the ’Clean up’command.

解答:Subversion客户端在提交内容之前会在本地的工作拷贝写日志,防止其他客户端再次作操作,如果这个提交过程中发生错误,就会存在未清理的日志,解决这个问题之需要执行“清理”操作,整理计算机上的工作副本,清理错误的日志记录,可以继续操作。

问题6:执行clean up时,出现错误 “Subversion reported an error while doing a cleanup!” '**' is not a working copy directory ”

解答:遇到这种情况,先删除隐藏文件夹.svn中的tmp下面的临时文件,再执行clean up。

问题7:在SVN中选中一个目录show log时,出现了某些版本只显示版本号和(no date),没有其他信息,什么原因引起的 ?

解答:出现了(no date)的revision,因为其他人修改了你所没有权限访问的某个目录下的文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值