第 5 章 日常使用指南

目录

5.1. 开始
5.1.1. 图标重载
5.1.2. 右键菜单
5.1.3. 拖放
5.1.4. 常用快捷方式
5.1.5. 认证
5.2. 导入数据到版本库
5.2.1. 版本库布局
5.2.2. 导入
5.2.3. 导入适当的位置
5.2.4. 专用文件
5.2.5. 引用的工程
5.3. 检出工作副本
5.4. 将你的修改提交到版本库
5.4.1. 提交对话框
5.4.2. 修改列表
5.4.3. 提交日志信息
5.4.4. 提交进程
5.5. 用来自别人的修改更新你的工作复本
5.6. 解决冲突
5.7. 获得状态信息
5.7.1. 图标重载
5.7.2. 在 Windows 资源管理器中的 TortoiseSVN 列
5.7.3. 本地与远程状态
5.7.4. 查看差别
5.8. 版本日志对话框
5.8.1. 调用版本日志对话框
5.8.2. 获得更多信息
5.8.3. 获取更多的日志信息
5.8.4. 修改日志消息和作者
5.8.5. 过滤日志信息
5.8.6. 统计信息
5.8.6.1. 统计页
5.8.6.2. 作者提交次数统计页
5.8.6.3. 按日期提交统计页
5.9. 查看差异
5.9.1. 文件差异
5.9.2. 比较文件夹
5.9.3. 使用 TortoiseIDiff 进行比较的图像
5.9.4. 其他的比较/合并工具
5.10. 添加新文件和目录
5.11. 忽略文件和目录
5.11.1. 忽略列表中的模式匹配
5.12. 删除、重命名和移动
5.12.1. 仅在单一实例中重命名文件
5.12.2. 修复文件改名
5.12.3. 删除未版本控制的文件
5.13. 撤消更改
5.14. 清理
5.15. 项目设置
5.15.1. Subversion 属性
5.15.2. TortoiseSVN 属性
5.16. 分支/标记
5.16.1. 创建一个分支或标记
5.16.2. 检出或者切换
5.17. 正在合并
5.17.1. 合并指定版本范围
5.17.2. 合并两个不同的目录树
5.17.3. 预览合并结果
5.17.4. 忽略祖先
5.18. 锁
5.18.1. 锁定在Subverion中是如何工作的
5.18.2. 取得锁定
5.18.3. 释放锁定
5.18.4. 检查锁定状态
5.18.5. 让非锁定的文件变成只读
5.18.6. 锁定钩子脚本
5.19. 创建并应用补丁
5.19.1. 创建一个补丁文件
5.19.2. 应用一个补丁文件
5.20. 谁修改了哪一行?
5.20.1. 追溯文件
5.20.2. 追溯不同点
5.21. 版本库浏览器
5.22. 版本分支图
5.23. 导出一个Subversion工作副本
5.24. 重新定位工作副本
5.25. 与 BUG 跟踪系统/问题跟踪集成
5.26. 与基于 WEB 的版本库浏览器集成
5.27. TortoiseSVN的设置
5.27.1. 常规设置
5.27.2. 外观与样式设置
5.27.2.1. 图标叠加设置
5.27.2.2. 图标集选择
5.27.2.3. TSVN对话框设置一
5.27.2.4. TSVN对话框设置二
5.27.2.5. TortoiseSVN 颜色设置
5.27.3. 网络设置
5.27.4. 外部程序设置
5.27.4.1. 差异查看器
5.27.4.2. 合并工具
5.27.4.3. 差异查看/合并工具的高级设置
5.27.4.4. 统一的差异查看器
5.27.5. 已保存数据的设置
5.27.6. 注册表设置
5.27.7. Subversion 的工作文件夹
5.27.8. 钩子脚本
5.28. 最后步骤

本文目的在与描述TortoiseSVN客户端的日常使用。不是一个版本控制系统指南,也不是Subversion (SVN)的指南。本文档的价值在于,当你知道大概要做什么,却又记不起应该怎么做的时候,可以有个参考的地方。

如果你需要了解使用Subversion进行版本控制的指南,我们建立你阅读以下这本梦幻之书: 《使用 Subversion 进行版本管理》.

本文档与TortoiseSVN和Subversion一样,也是处于“正在开发”的状态。如果你找到了错误之处,请向邮件列表报告,这样我们就可以更新它。日常使用指南(DUG)中的一些屏幕截图也许不符合当前软件中的情况。请您原谅我们。毕竟我们只是用业余的时间在制作TortoiseSVN 。

为了获得比每日用户指南更多的信息:

  • 你应该已经安装了TortoiseSVN。

  • 你应该熟悉版本控制系统。

  • 你应该知道Subversion的基础。

  • 你应该已经建立了一个服务器并且可以访问Subversion库。

5.1. 开始

5.1.1. 图标重载

图 5.1. 显示重载图标的资源管理器

显示重载图标的资源管理器

TortoiseSVN 最明显的特性之一就是图标重载,重载的图标显示在你的工作副本文件上。你一眼就可以看到文件被修改过了。参考 第 5.7.1 节 “图标重载” 查阅不同的重载图标含义。

5.1.2. 右键菜单

图 5.2. 版本控制下一个目录的右键菜单

版本控制下一个目录的右键菜单

所有的TortoiseSVN命令都是通过windows资源管理器的右键菜单执行。右键点击一个文件或者文件夹,大多数菜单项都能够直接显示。一个命令是否显示取决于这个文件或文件夹或者它们的父文件夹是否受版本控制,你也可以将TortoiseSVN的菜单作为资源管理器菜单的一部分。

在某些情况下,你可能看到多个TortoiseSVN条目。这不是BUG!

图 5.3. 在一个版本控制的文件夹下资源管理器文件菜单中的快捷方式。

在一个版本控制的文件夹下资源管理器文件菜单中的快捷方式。

本示例是在一个受控文件夹下的某个未受控的快捷方式, 在资源管理器的文件菜单下有三个TortoiseSVN条目。一个是受控文件夹本身的,一个是快捷方式本身的,第三个是快捷方式所指向的对象。为了帮助你区分它们,菜单条目的图标的右下角有标志,表明是文件、快捷方式、文件夹或是选中了多项。

5.1.3. 拖放

图 5.4. 版本控制下的一个目录的右键拖拽菜单

版本控制下的一个目录的右键拖拽菜单

在工作副本里右键拖拽文件或目录到新的位置,或者右键拖拽一个非版本控制的文件或文件夹到一个版本控制目录下的时候,右键菜单还能够出现其他的命令。

5.1.4. 常用快捷方式

一些常见的操作与Windows的快捷键是一样的,但没有出现在按钮或是菜单中。如果你找不到一些显而易见的操作,比如刷新视图,请参考以下内容。

F1

当然是帮助。

F5

刷新当前视图。这也许是单键命令中唯一一个最常用的了。比如... 在资源浏览器中,这个键可以刷新工作复本中的图标重载。在提交对话框中,它可以重新扫描查找哪些是需要提交的。在版本日志对话框中,可以重新联系版本库以检查更多的最近修改情况。

Ctrl-A

全选。可用于在得到一个错误消息并想要复制粘贴到电子邮件时。使用Ctrl-A to选择错误错误,然后...

Ctrl-C

... 复制选中的文本。

5.1.5. 认证

如果连接的版本库需要口令,就会显示认证对话框。

图 5.5. 认证对话框

认证对话框

输入你的用户名和口令。其检查框能让 TortoiseSVN 在 Subversion的 缺省目录:%APPDATA%\Subversion\auth 的三个子目录内保存认证信息:

  • svn.simple文件里包含了基本认证方式所需要的认证信息(用户名/口令)。

  • svn.ssl.server文件里包含了SSL服务器证书。

  • svn.username文件里包含了用户名认证的认证信息(不需要提供密码)。

每个文件对应一个服务器,文件是纯文本格式,因此可以用文本编辑器查看文件是对应哪个服务器。如果希望 Subversion 和 TortoiseSVN(或者其它 Subversion 客户端) 忘记某个服务器的凭证信息,只需删除这个服务器的对应文件即可。

如果想要清除所有服务器的认证缓存,可以通过TortoiseSVN的设置对话框的常规设置页来实现。那个按钮能够清除Subversion的auth目录下缓存的所有认证数据,以及老版本的TortoiseSVN存储在注册表里的认证数据。请参考 第 5.27.1 节 “常规设置”

关于如何设置服务器的认证和权限的更多信息,请参考第 3 章 配置服务器

[提示]提示

如果使用 Windows NT 域认证,输入用户名的时候要包括域名,如: MYDOMAIN\johnd