《SVN宇宙版教程》:第三章 TortoiseSVN必备技能-4

3.7 重定位

    当仓库的路径改变,或访问仓库的协议发生改变时这时就可以使用Relocate菜单来进行重定位,但需要说明的是,此Relocate菜单使用率非常低,因为它使用的场合大多时候是相同revision版本的重定位,而执行Relocate重定位操作倒不如来一个彻彻底底的Checkout导出。

    Step01:重置实验用的环境,创建全新仓库aa及仓库bb,向aa仓库中导入a.txt,向bb仓库中导入b.txt。

    Step02:然后将仓库aa导出到桌面aatest。

Step03:继续操作,在C:\svn_repository文件夹中创建xx仓库,并把aa中的所有内容复制到xx仓库中,这一步主要模拟的是桌面的aatest文件夹所关联的仓库aa路径改成了xx,这时就要对aatest工作副本进行重定位。

Step04:然后在xx仓库中配置引用bb仓库,成功引用bb仓库如图3.170所示。

图3.170 仓库xx成功引用bb仓库

 

    Step05:对桌面aatest文件夹调用Relocate菜单,配置弹出界面如图3.171所示。

图3.171 重定位到xx仓库

 

    Step06:单击OK按钮后aatest文件夹中的内容如图3.172所示。

图3.172 将aatext定位到xx仓库中

 

    Step07:但aatext里面的内容并未改变,如图3.173所示。

图3.173 重新定位后aatest内容并不改变

 

    Step08:对aatest文件夹执行Update菜单后的效果如图3.174所示。

图3.174 将引用仓库bb的内容也更新到aatest中了

 

3.8 如何导出

    菜单Export的作用就是将工作副本中的内容进行导出。

Step01:创建实验用的abc和xyz仓库,向abc仓库导入a.txt,向xyz仓库导入x.txt文件,并且设置abc仓库引用xyz仓库。

Step02:将仓库abc导出到桌面abcCheckout文件夹,如图3.175所示。

图3.175 导出abc仓库的配置

 

    Step03:导出后并在桌面abcCheckout文件夹中创建新建的文件夹及新建的文本文件如图3.176所示。

图3.176 桌面abcCheckout文件夹中的内容

 

    Step04:对文件夹abcCheckout执行Export菜单,弹出界面如图3.177所示。

图3.177 第一次Export的配置

 

    Step05:单击“确定”按钮执行Export操作,a1文件夹中的内容如图3.178所示。

图3.178 没有Export无版本的文件夹及文件

 

    Step06:再一次对文件夹abcCheckout执行Export菜单配置如图3.179所示。

图3.179 Export出无版本的文件

 

    Step07:文件夹a2中有无版本的文件夹及文件如图3.180所示。

图3.180 文件夹a2中有无版本的对象

 

    Step08:再一次对文件夹abcCheckout执行Export菜单配置如图3.181所示。

图3.181 忽略引用的项目

 

    Step08:文件夹a3中没有xyz项目的文件如图3.182所示。

图3.182 文件夹a3没有xyz项目

 

3.9 重命名

    Step01:将模板仓库a导出Checkout到桌面atest文件夹中,如3.183所示。

3.183 导出到atest文件夹

 

    Step02:使用Windows的“重命名”菜单来对文件重命名,如图3.184所示。

图3.184 用Windows菜单重命名

 

    Step03:将小写的a.txt改成大写的A.txt如图3.185所示。

图3.185 改成大写的A.txt文件

 

    Step04:对atest调用Commit提交按钮显示窗体效果如图3.186所示。

图3.186 很意外没有要提交的文件

 

    Step05:回到atest文件夹查看A.txt被还原为a.txt文件名如图3.187所示。

图3.187 文件名被还原

 

Step06:看来遇到这种更改文件名大小写的情况用Windows菜单是解决不了问题的,所以使用TortoiseSVN的Rename来解决这样的问题,对a.txt文件调用Rename菜单如图3.188所示。

图3.188 调用Rename菜单

 

    Step07:对a.txt重命名为A.txt如图3.189所示。

图3.189 改成大写的文件名

 

    Step08:单击OK后进行Commit提交出现界面如图3.190所示。

图3.190 操作Rename被识别

 

    Step09:单击OK后成功提交如图3.191所示。

图3.191 成功提交

 

    Step10:仓库中的A.txt文件被存储如图3.192所示。

图3.192 成功改成大写的文件名

 

3.10 删除资源

   Step01:将模板仓库a导出Checkout到桌面atest文件夹中,如3.193所示。

3.193 导出到atest文件夹

 

    Step02:使用Windows的删除菜单删除2个对象如图3.194所示。

图3.194 删除文件夹和文件

 

    Step03:这时再按下TortoiseSVN的SVN Update菜单时删除的2个对象又被还原了,效果如图3.195所示。

图3.195 文件夹和文件重新从服务器端下载了

 

    Step04:这时就要使用TortoiseSVN的Delete菜单删除要删除的对象,如图3.196所示。

图3.196 调用Delete菜单

 

Step05:单击Delete菜单后再单击SVN Update菜单后2个对象没有被还原,如图3.197所示。

图3.197 没有被重新下载

 

3.11 文件的恢复

在操作工作副本或仓库时如果误操作删除了1个文件时还是可以进行恢复的,下面的章节将分别对不同情况的误操作进行恢复。

3.11.1 工作副本删除的恢复

Step01:将模板仓库a放入C:\svn_repository文件夹中,将模板仓库a导出Checkout到桌面atest中。

Step02:用TortoiseSVN的Delete菜单删除trunk文件夹,再用Windows的删除菜单删除a.txt文件,如图3.198所示。

图3.198 用2种删除方式删除后的内容

 

    Step03:再对atest文件夹执行TortoiseSVN的Revert菜单出现界面如图3.199所示。

图3.199 调用Revert菜单

 

    Step04:单击OK按钮后成功恢复,效果如图3.200所示。

图3.200 成功恢复的文件夹结构

 

3.11.2 服务器端删除的恢复

    在工作副本中删除了文件并且已经成功提交到服务器,这种情况还是可以将文件进行还原的。

    Step01:重置实验环境,使用全新的模板仓库a,将仓库a导出Checkout到桌面atest文件夹中,将路径atest\a\aa\aaa\aaa.txt文件删除,再将atest\a.txt文件删除,然后Commit提交,效果如图3.201所示。

图3.201 成功提交坏事了

 

如何恢复删除的文件呢?

Step02:对atest文件夹调用Show log菜单,单击revision值是5的日志,从下面的列表中可以发现有aaa.txt及a.txt被删除了,因为Action的值是Deleted,现在就想恢复这2个文件,如图3.202所示。

图3.202 有2个文件被标记为Deleted删除状态

 

    Step03:按下Ctrl键对这2个文件进行多选,单击菜单如图3.203所示。

图3.203 单击Save revision to…菜单恢复文件

 

    Step04:在弹出的界面中将误删除的文件恢复到桌面,如图3.204所示。

图3.204 恢复到桌面

 

    Step05:单击确定按钮后桌面创建出了误删除的文件,效果如图3.205所示。

图3.205 虽然Commit但也可以还原

 

3.12 移动文件夹

    Step01:创建名称为z的仓库,将如图3.206所示的文件夹结构导入到仓库z中。

图3.206 将平行关系的a和b文件夹导入到z仓库中

 

Step02:并将z仓库Checkout到桌面z_checkout文件夹中,然后用2个资源管理器窗口打开同一个工作副本,效果如图3.207所示。

图3.207 2个资源管理器窗口打开同一个工作副本

 

Step03:然后用鼠标右键将左边窗口中的文件夹b拖拽到右边窗口中的a文件夹中,抬起鼠标右键后弹出菜单如图3.208所示。

图3.208 选择SVN Move versioned item(s) here菜单

 

    Step04:这时窗口中文件夹的图标发生变化,效果如图3.209所示。

图3.209 文件夹a改变了文件夹b是新添加的

 

    Step05:这时对文件夹z_checkout调用Commit菜单后的效果如图3.210所示。

图3.210 移动的操作是删除b再添加b

 

    Step06:提交后仓库中的日志内容如图3.211所示。

图3.211 版本revision值为2的效果

 

    Step07:版本revision为3的效果如图3.212所示。

图3.212 版本revision为3的效果

 

3.13 文件的比较

菜单Diff with previous version的作用是比较当前工作副本中的文件与服务器端文件的差异。

Step01:使用模板仓库a,将仓库a导出到桌面atest文件夹,对a.txt调用这个菜单如图3.213所示。

图3.213 调用Diff with previous version菜单

 

    Step02:弹出界面如图3.214所示。

图3.214 文件存在差异

 

上面是使用菜单Diff with previous version来检查文件的差异,如果检查目录的差异只有使用Check for modifications菜单了。

Step03:还可以将工作副本中的文件与指定URL路径中的文件进行差异的比较,操作的过程是先按Shift键,然后再调用菜单如图3.215所示。

图3.215 调用Diff with URL菜单

 

    弹出界面如图3.216所示。

图3.216 选择欲比较的URL路径中的文件

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值