TortoiseSVN的设置
想知道不同的设置是干什么用的,你只需将鼠标指针在编辑框/选项框上停留一秒钟…一个帮助提示气泡就会弹出来。
常规设置
图 4.70. 设置对话框,常规设置页面
这个对话框允许你指定自己喜欢的语言,同时也可做那些与Subversion相关的特殊设置。
- 语言
Selects your user interface language. Of course, you have to install the corresponding language pack first to get another UI language than the default English one.
- 检查更新
TortoiseSVN 将定期联系它的下载站点以查看是否有更新的程序版本可用。如果有,它将在提交对话框中显示一个通知链接。如果您想立即知晓,请使用现在检查。新版本将不会被下载;您只是简单地接收到一个信息对话框来告诉您有新的版本可用。
- 系统声音
TSVN已经默认安装了三个自定义声音。
错误
提示
警告
你可以使用Windows控制面板中的声音属性,来选择不同的声音(或是把这些声音完全关掉)。配置 按钮是一个打开控制面板声音属性的快捷方式。
- 使用Aero对话框
On Windows Vista and later systems this controls whether dialogs use the Aero styling.
- 创建库
On Windows 7 you can create a Library in which to group working copies which are scattered in various places on your system.
- 全局忽略样式
全局忽略模式是用来防止非版本控制的文件被显示出来,比如在提交对话框中等等。那些符合模式的文件在执行导入操作时同样被忽略。通过输入文件名或扩展名来忽略文件或文件夹。模式之间以空格分隔,例如 bin obj *.bak *.~?? *.jar *.[Tt]mp
。这些模式不应该包含任何路径分隔符。还请注意没有办法来区分文件和目录。请阅读 “忽略列表中的模式匹配”一节
值得注意的是,你在这里指定的忽略样式将同样作用于你本机上的其他Subversion客户端,包括命令行客户端。
小心
如果你象下面段落那样使用Subversion配置文件来设置一个 全局-忽略
样式,那么它将覆盖你在这里做的设置。该Subversion配置文件可以象下面段落描述的那样,通过 编辑 按钮来访问。
This ignore pattern will affect all your projects. It is not versioned, so it will not affect other users. By contrast you can also use the versioned svn:ignore
or svn:global-ignores
property to exclude files or directories from version control. Read “忽略文件和目录”一节 for more information.
- 将文件日期设置为“最后提交时间”
该选项通知 TortoiseSVN 在做检出或更新操作时,把文件日期设置为最后提交的时间。否则 TortoiseSVN 将使用当前日期。如果您正在进行软件开发,总的来说最好使用当前日期,因为软件生成系统通常通过查看时间戳来决定需要编译哪些文件。如果您使用“最后提交时间”并恢复到了一个更旧的文件版本,您的项目可能无法如您预期的那样编译。
- Subversion配置文件
Use Edit to edit the Subversion configuration file directly. Some settings cannot be modified directly by TortoiseSVN, and need to be set here instead. For more information about the Subversion config
file see the Runtime Configuration Area. The section on Automatic Property Setting
- Apply local modifications to svn:externals when updating
This option tells TortoiseSVN to always apply local modifications to the svn:externals
property when updating the working copy.
右键菜单配置
图 4.71. 设置对话框,右键菜单页面
该页面允许你指定: 在TortoiseSVN的主上下文菜单中哪些条目可以直接在鼠标右键菜单显示,哪些在TortoiseSVN子菜单显示。默认情况下很多项未被勾选,只在子菜单显示。
获得锁会有一个特别的情况,你可以将其提升到顶级带但,但是大多数文件不需要锁定,这样做只是添加了混乱。然而,一个标记为svn:needs-lock
属性的文件每次编辑前都需要那个操作,所以这个菜单会进入顶级菜单会比较方便。选定这个选项,会使设置svn:needs-lock
属性的文件的Get Lock出现在顶级菜单中。
Most of the time, you won't need the TortoiseSVN context menu, apart for folders that are under version control by Subversion. For non- versioned folders, you only really need the context menu when you want to do a checkout. If you check the option Hide menus for unversioned paths
, TortoiseSVN will not add its entries to the context menu for unversioned folders. But the entries are added for all items and paths in a versioned folder. And you can get the entries back for unversioned folders by holding the Shift key down while showing the context menu.
如果您不想在计算机中的某些路径中显示 TortoiseSVN 的上下文菜单,您可以在底部的框中列出它们。
TSVN对话框设置一
图 4.72. 设置对话框,对话框一页面
此对话框允许你按照喜欢的方式去配置一些TSVN的对话框。
- 默认的日志信息数
限制你首次选择 TortoiseSVN → 显示日志 时,TortoiseSVN 从服务器获取的日志信息数。在服务器连接缓慢时很有用。你可以使用 全部获取 或 下100条 来获得更多信息。
- 日志信息字体
选择日志信息显示的字体样式和大小,作用域为版本日志对话框的中间窗格,以及提交对话框时填写日志信息的窗格。
- 日志信息使用短日期/时间格式
如果标准长度的日期/时间信息占在用了过多的屏幕空间,可以使用短格式。
- 可以在日志列表中双击以便与以前的版本比较
如果您经常在日志对话框的顶部窗格中进行版本比较,您可以使用此选项来允许双击操作。默认情况下是不启用的,因为获取差异是相当漫长的过程,并且许多人在意外双击后都不愿等待,这就是此选项默认禁用的原因。
- 自动关闭
当一个动作正确无误地完成时,TSVN可以自动关闭所有的进程对话框。这项设置允许你选择在何种情况下关闭对话框。默认(推荐)的设置是 手动关闭 ,允许你重新浏览所有信息并检查发生了什么。当然,你可能会决定忽略某些类型的信息并在你的操作没做出什么重大改变的情况下让对话框自动关闭。
如无合并、添加、删除操作,自动关闭 意味着如果有简单更新的话,进程对话框将关闭。但如果版本库的更改和你的内容进行了合并,或若有任何文件被添加或删除,对话框将保持打开。若操作中发生什么冲突和错误这些对话框也将同样保持打开。
无冲突时自动关闭 更放宽了标准,即使在无合并、添加、删除操作时也同样关闭对话框。当然,如果操作发生了任何冲突或错误,对话框将保持打开。
如无错误,自动关闭 即使在有冲突发生时也会关闭。维持对话框打开的唯一条件是发生了错误,使得Subversion无法完成任务。举个例子,一个更新操作由于服务器不可达而失败了,或是一个提交操作因为工作副本已经过期而失败。
- 对本地操作始终关闭对话框
像添加文件或恢复更改这样的本地操作不需要联系版本库并且可快速完成,因此进度对话框通常意义不大。如果您想要进程对话框在这些操作后自动关闭,则选择此选项,除非有错误发生。
- 在还原的时候使用回收站
当您恢复本地修改时,您的更改将被丢弃。TortoiseSVN 通过在恢复至原始副本之前将已修改文件发送至回收站来赋予您额外的安全保证。如果您想跳过回收站,则不要选择此选项。
- 将工作副本 URL 用作默认的 “来源:” URL
在合并对话框里,默认行为是在每次合并中记忆 起始: 的URL。无论如何,都有某些人喜欢在他们的版本进化树中从很多不同的位置执行合并操作,他们发现从当前工作副本的URL开始更方便些。该URL可以随后被编辑来指向一个同级路径或另一个分支。
- 缺省检出路径
你可以指定缺省的检出路径。如果你保持所有检出在同一个地方,那么预先填写的路径是极为有用的,这样你只需要在路径末尾增加新的目录名称即可。
- 缺省检出URL
你可以指定缺省的检出URL。如果你经常检出一些大项目的子工程,那么预先填写的URL是极为有用的,这样你只需要在路径末尾增加新的工程名称即可。
TSVN对话框设置二
图 4.73. 设置对话框,对话框二页面
- 递归处理未进行版本控制的文件夹
- 若这个选项框被选中(默认状态),那么一个非版本控制的文件夹,不论在 添加,提交 或 检查修改 时显示的是什么状态,它的每个子文件和子文件夹都要同样显示。取消选择将减少这些对话框中的混乱程度。这样一来如果你选择添加一个非版本控制的文件夹,将会非递归地添加。
在 检查修改 对话框中您可以选择查看被忽略的项目。如果选中该复选框,那么每当找到一个被忽略的文件夹,所有的子项也将被显示。
- 自动完成文件路径和关键词
提交对话框包含了一项功能,可以解析被提交的文件名列表。当您输入列表中某个项目的前三个字母时,自动完成框就会弹出,您就可以按回车来完成该文件名。选中该框以启用此功能。
自动完成分析的超时时间(秒)
如果有许多大文件要检查,自动完成解析器可能会非常慢。该超时时间设置可以防止提交对话框被长时间挂起。若您错过了某些重要的自动完成信息,您可以延长该超时时间。
仅在设置了
tsvn:projectlanguage
时才进行拼写检查若你不愿意在所有提交操作时都进行拼写检查,就选择该选项。而后拼写检查功能将在项目属性做出明确要求时才生效。
日志中保留的最大条目数量
- 当您在提交对话框中输入日志消息时,TortoiseSVN 会存储起来以便以后可能重新使用。默认情况下,它将为每个版本库保存最后 25 条日志信息,但是您可以在此自定义该数目。若您有很多不同的版本库,您可能会希望减少该数目以防止向注册表中填入过多信息。
请注意此设置仅应用于您在此计算机上键入的消息。它跟日志缓存毫不相关。
- 自动选择项目
在提交对话框中的正常行为就是选择所有更改的(受版本控制的)项目以备自动提交。如果您想在启动时不选择任何项目并且手动挑选项目以备提交,则不要选择此框。
提交后如果有项目未被提交则重新打开对话框
This reopens the commit dialog automatically at the same directory after a successful commit. The dialog is reopened only if there still are items left to commit.
启动时连接版本库
“检查修改”对话框将默认检查工作副本,但仅当你点击 检查版本库 时才连接你的版本库做检查。若你想总是去检查版本库,就可以使用该设置来使版本库检查的动作每次都自动启动。
在锁定文件之前显示加锁对话框
- 当你选择一个或多个文件,然后选择 TortoiseSVN → 加锁 后,一些项目的惯例是写加锁信息,解释你为什么锁定这些文件。如果你不使用加锁信息,可以取消此选择框,从而略过对话框,直接锁定文件。
如果你在目录上使用加锁命令,一定会出现加锁对话框,因为它要让你选择加锁的文件。
如果你的项目使用了 tsvn:lockmsgminsize
属性,那么不管你如何设置,都会看到加锁对话框,因为此项目需要加锁信息。
TortoiseSVN 对话框设置3
图 4.74. 设置对话框,对话框第三页
Settings for the repository browser:
- 预取文件夹以加速浏览
- If this box is checked (default state), then the repository browser fetches information about shown folders in the background. That way as soon as you browse into one of those folders, the information is already available.
Some servers however can't handle the multiple requests this causes or when not configured correctly treat so many requests as something bad and start blocking them. In this case you can disable the pre-fetching here.
- 显示外部
- If this box is checked (default state), then the repository browser shows files and folders that are included with the
svn:externals
property as normal files and folders, but with an overlay icon to mark them as from an external source.
As with the pre-fetch feature explained above, this too can put too much stress on weak servers. In this case you can disable this feature here.
There are two versions of shelfing implemented in SVN. Here you can select which version you want to use. Note that changing this setting might require an OS restart to take effect.
- V2
- this version is much faster than
V3
and is the recommended version to use.
However, the speed comes at a prize: V2
does not handle directory changes, and can't handle copies and moves of files.
- V3
- this is the latest version of the shelfing feature. It can handle changes to directories as well as file moves/copies.
However, V3
is much slower than V2
and can be unusably slow for big repositories or if you have a slow connection to the repository.
TortoiseSVN 颜色设置
图 4.75. 设置对话框,颜色页面
此对话框允许你按照你喜欢的方式来配置TSVN对话框使用的文本颜色。
- 可能或确实有冲突/问题
- 当更新时或合并时发生了冲突。如果对应于版本控制下的文件/文件夹,存在一个同名的非版本控制的文件/文件夹,此时做更新将被阻碍。
此颜色同样被用在进程对话框的错误信息中。
- 添加文件
向版本库添加的条目。
丢失/已删除/已替换
已从工作副本中遗失的条目;已从版本库中删除;或已经从工作副本删除并且被另一个同名文件替换。
已合并
从版本库所做的更改被成功地合并到工作副本,并无任何冲突产生。
已修改/已复制
已经增加(现在只是修改),或者在版本库中复制。也在包含复制条目的日志对话框中使用。
删除的节点
一个已经从版本库中删除了的条目。
添加的节点
一个通过添加、复制或移动操作,已经被添加到版本库的条目。
重命名的节点
一个在版本库中已经被重命名的条目。
替换的节点
该原始条目已经被删除,且有同名条目替换了的条目。
过滤器匹配
- 当在日志对话框中使用筛选时,在结果中使用颜色来突出显示搜索对象。
other settings:
- Dark theme
- The dialogs in TortoiseSVN can be shown in a dark mode on Windows 10 1809 and later. This feature also requires that dark mode for applications is enabled in the Windows 10 settings.
重要
Note that not all controls in all dialogs are shown in a dark theme.
版本图设置
图 4.76. 设置对话框,版本图页面
- 分类模式
- 版本图会通过区分主干,分支和标签来为版本库结构显示更为清晰的图示。由于 Subversion 没有内置这样的分类,此信息主要提取自路径名称。默认设置假设您使用 Subversion 文档中所建议的常规英文名称,当然您的使用情况也可能发生改变。
在所提供的三个框中指定用来识别这些路径的模式。模式不会区分大小写,但您必须以小写来指定它们。通配符 *
和 ?
将照常工作,并且可以使用 ;
来分隔多个模式。不要包括任何额外的空格,因为它将包含在匹配规范中。
提交标签检测
Please note that these patterns are also used to detect commits to a tag, not just for the revision graph.
- 修改颜色
- 版本图使用颜色来表示节点类型,即节点是否是添加的,删除的,重命名的。为了帮助分辨出节点分类,您可以允许版本图混合颜色以表示即是节点类型又是分类。如果选中该复选框,将使用颜色混合。若未选中此框,颜色仅用于表示节点类型。使用颜色选择对话框来分配要使用的特定颜色。
版本图颜色
图 4.77. 设置对话框,版本图颜色页面
此页面允许您配置要使用的颜色。请注意,这里指定的颜色是纯色。大多数节点都是使用节点类型颜色、背景颜色和分类颜色(可选)的混合色。
- 删除的节点
在同一修订版本中已被删除并且不会复制到任何别的地方的项目。
添加的节点
新添加的或复制的(用历史添加)项目
重命名的节点
在同一修订版本中从一个位置删除并且在另一位置添加的项目。
已修改的节点
无任何添加或删除的简单的修改。
未修改的节点
可用于显示用作副本源的修订版本,即使修订版本中所绘制的项目没有发生更改。
主干节点
版本库中的当前 HEAD 版本。
工作副本节点
如果您选择为您修改后的工作副本(在图形中连接至它最后提交的修订版本)显示额外的节点,使用此颜色。
工作副本节点边框
如果您选择显示工作副本是否被修改,当发现修改时为工作副本节点使用此颜色边框。
标签节点
分类为标签的节点也可以用此颜色混合。
主干节点
分类为主干的节点也可以用此颜色混合。
折叠式的标签标记符
如果您使用标签折叠以节省空间,使用此颜色块在副本源上来标记标签。
所选节点标记符
当你左键点击节点来选择它时,用于表示选定的标记符为此颜色块。
修剪
- 当版本图被拆分成子树结构时将使用这些颜色,并且用交替的条纹颜色来标示背景,以便分辨出各个树结构。
图标叠加设置
图 4.78. 设置对话框,图标覆盖页面
此页面允许您选择 TortoiseSVN 要显示图标覆盖的项目。
因为它要花费一段时间来获取工作副本的状态,TortoiseSVN 将使用一个缓存来存储这些状态,从而使资源管理器在显示图标覆盖时,不会消耗太多资源。您可以根据您的系统和工作副本大小来选择让 TortoiseSVN 使用哪种类型的缓存:
- 默认
- 以一个单独的进程(
TSVNCache.exe
)来缓存所有的状态信息。该进程监视所有驱动器的更改,并在工作副本中的文件被修改时重新获取其状态。该进程以最低优先级运行,所以其他程序不会被它挤占。这也意味着状态信息并不是 实时 的,因为它需要几秒钟时间处理图标重载的变化。
优点: 图标覆盖递归地显示状态,就是说,如果一个处在工作副本深处的文件被修改了,所有上级目录直到工作副本的根目录都会显示出已修改的覆盖图标。由于该进程可以向 Windows 外壳发送通知,所以资源管理器左侧树视图通常也会更改。
缺点: 即使你已经不在项目下工作了,该进程仍然持续运行。取决于你工作副本的数量和大小,它将占用10-50 MB的RAM内存空间。
- Windows 外壳
- 缓存在外壳扩展dll中直接完成,但仅仅是为那些当前可见的文件夹。每次你浏览到其他文件夹,状态信息就会被重新获取。
优点: 仅仅需要很少的内存(大约 1 MB),并且可以 实时 显示状态。
缺点: 因为仅有一个文件夹被缓存,图标重载不会递归地显示状态。在大一些的工作副本下,它在浏览器中显示一个文件夹将比默认缓存模式花费更多时间。而且 mime-type 列将无效。
- 无
- 在这种设置下,TSVN在浏览器里就完全不去获取状态了。因此,版本控制下的文件将不会获得任何图标重载。文件夹也仅仅有个“正常”状态的图标重载,其他的不会显示,也不会有其他额外的列可用。
优点: 绝对不会占用任何额外的内存,也完全不会减慢浏览器的浏览速度。
缺点: 文件和文件夹的状态信息不会显示在资源管理器中。要获知工作副本是否被修改,您需要使用 “检查修改” 对话框。
默认情况下,覆盖图标和上下文菜单将出现在所有的打开/保存对话框中,就像在 Windows 资源管理器中一样。如果您想让它们仅出现在 Windows 资源管理器中,选择 仅在资源管理器中显示图标覆盖和上下文菜单。
You can force the status cache to None for elevated processes by checking the Disable status cache for elevated processes box. This is useful if you want to prevent another TSVNCache.exe
process getting created with elevated privileges.
您还可以选择将文件夹标记为已修改,如果它们包含非版本控制的项目。这很有用,可以提醒您已经创建了尚未受版本控制的新文件。此选项仅适用于在使用 默认 状态缓存选项时(见下文)。
If you have files in the ignore-on-commit
changelist, you can chose to make those files not propagate their status to the parent folder. That way if only files in that changelist are modified, the parent folder still shows the unmodified overlay icon.
下一组允许您选择要显示图标覆盖的存储器种类。默认情况下,仅硬盘驱动器被选中。您甚至可以禁用所有的图标覆盖,但这样做还有何乐趣?
网络驱动器可能会很慢,所以默认情况下不会为位于网络共享上的工作副本显示图标。
USB闪存看上去是个特殊情况,因为驱动类型是设备自主标识的。于是有些显示为固定驱动器,而有些显示为可移动磁盘。
排除路径 是用来告诉 TortoiseSVN 不用 在哪些路径下显示图标覆盖和状态列。如果您有些很大的工作副本,而这些工作副本仅仅包含您完全不会改变的库文件,因此也就不需要显示图标覆盖,或者您只想 TortoiseSVN 在特定的目录中查看。
您在此指定的任何路径都被假定为递归应用,因此子文件夹也都不会显示图标覆盖。如果您 只 想排除有名称的目录,在路径后追加 ?
。
包含路径 也使用同样的语法。除了有些反例: 即使该路径处在某个取消图标重载显示的特定驱动类型下,或是处在上面的排除路径之下, 也依然会显示图标重载。
用户有时会问这三种设置如何相互作用。对于任何给定的路径,检查包含和排除列表,向上搜寻整个目录结构直到找到匹配。当找到第一个匹配时,遵循包含或排除规则。如果有冲突,单个目录规范的优先级高于递归规范,然后包含优先级高于排除。
An example will help here:
- Exclude:
- C:
- C:\develop\?
- C:\develop\tsvn\obj
- C:\develop\tsvn\bin
- Include:
- C:\develop
These settings disable icon overlays for the C: drive, except for c:\develop
. All projects below that directory will show overlays, except the c:\develop
folder itself, which is specifically ignored. The high-churn binary folders are also excluded.
TSVNCache.exe 同样使用这些路径来限制它的扫描。如果你想让它仅仅在某些特定文件夹里监视,就取消所有的驱动器类型,并仅仅包含你允许被扫描的文件夹。
排除 SUBST 磁盘
It is often convenient to use a SUBST
drive to access your working copies, e.g. using the command
- subst T: C:\TortoiseSVN\trunk\doc
However this can cause the overlays not to update, as TSVNCache
will only receive one notification when a file changes, and that is normally for the original path. This means that your overlays on the subst
path may never be updated.
解决此问题的一个简单方法就是排除原始路径,使其不显示图标覆盖,以便于图标覆盖显示于 subst
路径。
Sometimes you will exclude areas that contain working copies, which saves TSVNCache from scanning and monitoring for changes, but you still want a visual indication that a folder contains a working copy. The Show excluded root folders as 'normal' checkbox allows you to do this. With this option, working copy root folders in any excluded area (drive type not checked, or specifically excluded) will show up as normal and up-to-date, with a green check mark. This reminds you that you are looking at a working copy, even though the folder overlays may not be correct. Files do not get an overlay at all. Note that the context menus still work, even though the overlays are not shown.
作为一个特殊例外, 从不为 将排除文件夹显示为 '正常' 选项考虑驱动器 A:
和 B:
。这是因为 Windows 强制查看驱动器,这可能导致在资源管理器启动时延迟数秒钟,即使您的 PC 确实有一个软盘驱动器。
图标集选择
图 4.79. 设置对话框,图标集页面
你可以选择你最喜欢的重载图标集。要注意的是,倘若改变了重载图标集,你可能需要重启计算机使更改生效。
启用的图标覆盖
图 4.80. 设置对话框,图标处理器页面
Because the number of overlays available is severely restricted, you can choose to disable some handlers to ensure that the ones you want will be loaded. Because TortoiseSVN uses the common TortoiseOverlays component which is shared with other Tortoise clients (e.g. TortoiseCVS, TortoiseHg) this setting will affect those clients too.
网络设置
图 4.81. 设置对话框,网络设置页面
如果需要穿透你公司的防火墙,在这里可以配置你的代理服务器。
If you need to set up per-repository proxy settings, you will need to use the Subversion servers
file to configure this. Use Edit to get there directly. Consult the Runtime Configuration Area for details on how to use this file.
你同样可以在此指定SSH客户端程序,用来支持TortoiseSVN同使用svn+ssh协议的版本库建立安全连接。我们推荐您使用TortoisePlink.exe。这是著名的Plink程序的一个定制版本, 并且业已包含在TortoiseSVN之中,但它被编译成了一个无窗口的应用,因此当你每次认证的时候将不会看到弹出的DOS窗口。
You must specify the full path to the executable. For TortoisePlink.exe this is the standard TortoiseSVN bin directory. Use the Browse button to help locate it. Note that if the path contains spaces, you must enclose it in quotes, e.g.
- "C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe"
这里有个不弹出窗口的副作用: 将没有什么错误信息可供你追踪。因此倘若认证失败你将得到一个信息说: “Unable to write to standard output”。这样一来,我们就推荐你第一次设置时使用原始的Plink程序;而当一切工作正常之时,再使用定制版的TortoisePlink,并且重复利用那些相同的参数。
TortoisePlink does not have any documentation of its own because it is just a minor variant of Plink. Find out about command line parameters from the PuTTY website.
为了避免反复提示输入密码,您也可以考虑使用如 Pageant 之类的密码缓存工具。这也可从 PuTTY 网站下载。
Finally, setting up SSH on server and clients is a non-trivial process which is beyond the scope of this help file. However, you can find a guide in the TortoiseSVN FAQ listed under Subversion/TortoiseSVN SSH How-To.
外部程序设置
图 4.82. 设置对话框,差异查看页面
在这里你可以定义你自己的差异查看/合并工具. 默认设置是使用与TortoiseSVN一同安装的TortoiseMerge。
差异查看器
有时你可能需要一个外部的差异查看程序来比较不同版本的文件。在为你的命令行填写各种可选参数的同时,要确保这些外部程序从中获得文件名。在TortoiseSVN编辑命令行时,使用以 %
开头的替代参数。当外部程序执行至遇到这些替代参数,它将从TortoiseSVN那里获取那些实际的值。参数的填写顺序将依赖于你使用的差异查看程序。
- %base
没更改的原始文件
%bname
原始文件的窗口标题
%nqbname
基本文件的windows主题,没有引用
%mine
你更改过的新文件
%yname
你新文件的窗口标题
%nqyname
The window title for your file, without quotes
%burl
The URL of the original file, if available
%nqburl
The URL of the original file, if available, without quotes
%yurl
The URL of the second file, if available
%nqyurl
The URL of the second file, if available, without quotes
%brev
源文件的修订版本,如果有的话
%nqbrev
源文件的修订版本,如果有的话,没有引用。
%yrev
The revision of the second file, if available
%nqyrev
The revision of the second file, if available, without quotes
%peg
The peg revision, if available
%nqpeg
The peg revision, if available, without quotes
%fname
The name of the file. This is an empty string if two different files are diffed instead of two states of the same file.
%nqfname
- The name of the file, without quotes
窗口标题并不纯是文件名。TortoiseSVN 将其当作名称来显示并创建相应的名称。因此,假设您正在将版本 123 中的一个文件同工作副本中的一个文件做差异对比时,名称将显示为 文件名 : 版本 123
和 文件名 : 工作副本
。
For example, with ExamDiff Pro:
- C:\Path-To\ExamDiff.exe %base %mine --left_display_name:%bname
- --right_display_name:%yname
or with KDiff3:
- C:\Path-To\kdiff3.exe %base %mine --L1 %bname --L2 %yname
or with WinMerge:
- C:\Path-To\WinMerge.exe -e -ub -dl %bname -dr %yname %base %mine
or with Araxis:
- C:\Path-To\compare.exe /max /wait /title1:%bname /title2:%yname
- %base %mine
or with UltraCompare:
- C:\Path-To\uc.exe %base %mine -title1 %bname -title2 %yname
or with DiffMerge:
- C:\Path-To\DiffMerge.exe -nosplash -t1=%bname -t2=%yname %base %mine
如果您使用 svn:keywords
属性来扩展关键词,特别是一个文件的修订版本,那么只要关键词不同,文件之间也会存在差异。同样如果您使用 svn:eol-style = native
,原 BASE 文件只有纯 LF
行结尾,而您的文件将会是 CR-LF
行结尾。TortoiseSVN 将通常在做 diff 操作之前先解析 BASE 文件以扩展关键词和行结尾,从而自动隐藏这些差异。然而,对于大文件这可能要花上很长的时间。如果不选择 与基础版本比较时转换文件,那么 TortoiseSVN 将跳过对这些文件的预处理。
你也可以使用 Subversion 属性来指定其它的比较工具。既然这些是简短的文本,你可能想要使用简单的查看器。
如果您已经配置了备用的 diff 工具,您可以从上下文菜单访问 TortoiseMerge 和第三方工具。上下文菜单 → Diff 使用主 diff 工具,and Shift+ 上下文菜单 → Diff 使用第二 diff 工具。
At the bottom of the dialog you can configure a viewer program for unified-diff files (patch files). No parameters are required. The Default setting is to use TortoiseUDiff which is installed alongside TortoiseSVN, and colour-codes the added and removed lines.
Since Unified Diff is just a text format, you can use your favourite text editor if you prefer.
合并工具
外部合并程序被用来解决冲突的文件。像差异查看程序那样,替代参数同样被用在命令行中。
- %base
没有被你或他人更改的原始文件
%bname
原始文件的窗口标题
%nqbname
基本文件的windows主题,没有引用
%mine
你更改过的新文件
%yname
你新文件的窗口标题
%nqyname
The window title for your file, without quotes
%theirs
档案库中存放的文件
%tname
档案库中文件的窗口标题
%nqtname
The window title for the file in the repository, without quotes
%merged
发生冲突的文件,同时将被合并后的文件替换
%mname
合并文件的窗口标题
%nqmname
The window title for the merged file, without quotes
%fname
冲突文件的名字
%nqfname
- 冲突文件的名字,没有引用
For example, with Perforce Merge:
- C:\Path-To\P4Merge.exe %base %theirs %mine %merged
or with KDiff3:
- C:\Path-To\kdiff3.exe %base %mine %theirs -o %merged
- --L1 %bname --L2 %yname --L3 %tname
or with Araxis:
- C:\Path-To\compare.exe /max /wait /3 /title1:%tname /title2:%bname
- /title3:%yname %theirs %base %mine %merged /a2
or with WinMerge (2.8 or later):
- C:\Path-To\WinMerge.exe %merged
or with DiffMerge:
- C:\Path-To\DiffMerge.exe -caption=%mname -result=%merged -merge
- -nosplash -t1=%yname -t2=%bname -t3=%tname %mine %base %theirs
差异查看/合并工具的高级设置
图 4.83. 高级差异比较设置/高级合并设置的对话框
在高级设置中,您可以为每种文件类型都定义一个不同的差异比较及合并程序。例如,您可以将 Photoshop 关联为 .jpg
文件的 “Diff” 程序 :-) 也可以将 svn:mime-type
属性同差异比较/合并程序关联起来。
为了使用文件扩展,你需要指定扩展。使用 .BMP
来描述 Windows 位图文件。如果使用svn:mime-type
属性,要指定多媒体文件类型,包含斜线,例如text/xml
。
已保存数据的设置
图 4.84. 设置对话框,已保存数据设置页面
为您方便着想,TortoiseSVN保存了很多你用过的设置,并记录你最近浏览过的地址。如果你想清空这些数据缓存,就在这里操作。
- URL历史记录
- 每次你检出一个工作副本,合并那些更改的文件,或仅仅是在使用版本库浏览器时,TortoiseSVN都将保存一个记录,记录那些最近使用过的URL,并在一个下拉列表框中显示出来。有时列表会被逐渐增多的过期URL弄得乱糟糟的,所以有定期清理一下的必要。
如果您想要从一个组合框中删除单个项目,只要点击箭头向下拉动组合框,将鼠标移动到要删除的项目上并按 Shift+Del。
- 日志信息(输入对话框)
TortoiseSVN同时也储存你最近提交时填写的日志信息。对应每个版本库都要储存这些信息,所以如果你访问过很多版本库,这个列表将变得非常大。
日志信息(显示日志对话框)
TortoiseSVN 将通过显示日志对话框而获取的日志消息缓存起来,从而节省下次显示日志的时间。如果其他人编辑了日志消息而您已缓存了该消息,您将无法看到更改,除非您清除缓存。可在 日志缓存 标签中启用日志消息缓存。
窗口大小及位置
许多对话框都可以记录你最后一次使用时的窗口大小和位置。
认证数据
- 当你在登陆某个Subversion服务器,填写认证信息时,用户名和密码也可以被保存在本地,你也就不用每次都输入了。但考虑到一些安全因素,你可能会有清除这些认证信息的愿望,或者你仅仅是想换个不同的用户名登陆…John知道你正在用他的机器么?(规范点儿,用你自己的用户名登陆版本库吧,伙计 *by Jax)
If you want to clear authentication data for one particular server only, use the Clear… instead of the Clear all button.
- 动作日志
- TortoiseSVN 保存了一个日志,包含了进度对话框的一切写入。这很有用,比如您想要检查在最近的更新命令中都发生了什么。
日志文件有长度限制,文件过大时最旧的内容将被丢弃。默认保留 4000 行,但是您可以自定义该数字。
您可以从这里查看日志文件内容,也可清理它。
日志缓存
图 4.85. 设置对话框,日志缓存页面
此对话框允许您配置 TortoiseSVN 的日志缓存功能,其保留了日志消息和变更路径的本地副本以便避免从服务器耗时的下载过程。使用日志缓存可以大大加快日志对话框和版本图。另一个有用的功能就是在离线时仍然可以访问日志消息。
- 启用日志缓存
- 每当请求日志数据时启用日志缓存。如果选中,在可用时将从缓存中检索数据,任何不在缓存中的消息都将从服务器中检索并添加至缓存中。
如果禁用缓存,总是直接从服务器中检索数据并且不会存储在本地。
- 允许不明确的 URL
有时您可能必须连接到一个为所有版本库使用同一 URL 的服务器。
svnbridge
的旧版本就会这样做。如果您需要访问此类版本库,就必须选中此选项。如果不需要,则不用选择以便提高性能。允许不明确的 UUID
某些主机服务会为其所有版本库给予相同的 UUID。您甚至可能也这样做过,当通过复制一个版本库文件夹来创建一个新的版本库时。出于各种原因,这不是个好主意 - UUID 应该是唯一的。然而,如果选中此复选框,日志缓存仍然会在这种情况下工作。如果不需要它,请不要选择以提高性能。
如果不能连接版本库
- 如果您正在离线工作或者版本库服务器已关闭,日志缓存仍可用来提供保留在缓存中的日志消息。当然缓存可能不是最新的,因此有选项可供您选择是否使用此功能。
当从缓存中提取日志数据而不联系服务器时,使用这些消息的对话框将在标题栏中显示离线状态。
- 更新 HEAD 版本之前的超时时间
当您调用日志对话框时,您通常会希望联系服务器以检查是否有任何新的日志消息。如果此处设置的超时值非零,那么将只在自最后一次联系起超时时间已过时联系服务器。这样可以减少服务器往返过程,如果您经常打开日志对话框并且该服务器很缓慢的话,但所显示的数据可能无法完全保持最新。如果您想要使用此功能,我们建议使用值 300 (5 分钟) 作为权衡考量。
不活动的小缓存过期天数
如果您浏览过很多版本库,您将积累大量的日志缓存。如果您不常使用它们,缓存将不会变得很大,因此 TortoiseSVN 将在默认的设定时间后清除它们。使用此项目来控制缓存清除。
删除不活动缓存的最大尺寸
较大的缓存要重新获取可不容易,因此 TortoiseSVN 仅清除小的缓存。用此值来微调阈值。
在删除缓存之前的最大失败次数
- 有时缓存出错并导致崩溃。如果出现这种情况,缓存通常被自动删除以避免问题复发。如果您使用不太稳定的每日编译版本,您可以选择总是保留缓存。
缓存的版本库
在此页面上,您可以看到已经缓存至本地的版本库列表,以及用作缓存的空间。如果您选择一个版本库,您就可以使用下面的按钮。
点击 更新 可完全刷新缓存并填满所有空隙。对于大版本库,这可能会耗用很长时间。但这很有用,比如您转至离线并希望获得最佳的可用缓存。
点击 导出 按钮以导出整个缓存作为 CSV 文件集。这很有用,比如您想使用外部程序来处理日志数据,尽管它主要用于开发人员。
点击 删除 为所选版本库删除所有缓存的数据。这不会禁用版本库缓存,因此您下次请求日志数据时,一个新的缓存将被创建。
日志缓存统计
图 4.86. 设置对话框,日志缓存统计
点击 详细信息 按钮来查看特定缓存的详细统计。此处显示的许多字段主要对 TortoiseSVN 的开发者有意义,因此不会全部对它们进行详细说明。
RAM
缓存服务所需的内存量。
磁盘
用于缓存的磁盘空间量。数据被压缩,因此磁盘使用率通常相当适度。
连接
显示版本库在最后一次使用缓存时是否可用。
最近更新
最后一次缓存内容更改时间。
最后一次 HEAD 更新
最后一次我们从服务器请求 HEAD 版本的时间。
作者
缓存中记录的消息的不同作者的数量。
路径
列出的路径数量,正如您使用
svn log -v
所看到的一样。跳过范围
我们还未获取的版本范围数量,只是因为它们还没有被请求。这是对缓存中空位数量的测量。
最大版本号
缓存中存储的最高版本号。
版本计数
存储在缓存中的版本数量。这是缓存完整性的另一项测量。
客户端钩子脚本
图 4.87. 设置对话框,钩子脚本页
这个对话框允许你指定当特定 Subversion 动作执行时,自动执行的钩子脚本。与 “服务器端钩子脚本”一节 中说明的钩子脚本相反,这些脚本在客户端本地执行。
应用程序,例如钩子,可能调用如SubWCRev.exe
这样的程序,来更新提交后的版本号,可能还会出发重新构建。
Note that you can also specify such hook scripts using special properties on your working copy. See the section “TortoiseSVN 项目属性”一节
图 4.88. 设置对话框,配置钩子脚本页面
要增加钩子脚本,直接点击 增加 ,然后输入脚本即可。
There are currently these types of hook script available
开始提交
在提交对话框显示之前被调用.当钩子修改了一个受版本控制的文件,而且影响了需要提交的文件或者要提交的内容,可能需要使用它.然而,需要注意,钩子是在之前的某个时候被调用的,所以被选中提交的完整文件列表是不可用的.
手动预提交
If this is specified, the commit dialog shows a button Run Hook which when clicked runs the specified hook script. The hook script receives a list of all checked files and folders and the commit message if there was one entered.
检出-提交
Called after the user clicks OK in the commit dialog, and before the commit dialog closes. This hook gets a list of all the checked files. If the hook returns an error, the commit dialog stays open.
If the returned error message contains paths on newline separated lines, those paths will get selected in the commit dialog after the error message is shown.
提交之前
在用户点击了提交对话框的确定按钮,并且实际的提交过程开始后被调用.钩子包含所有要提交的内容的详细信息.
提交之后
Called after the commit finishes successfully.
开始更新
在更新到版本对话框显示之前调用
更新之前
在 Subversion 真正开始更新或切换前调用。
更新之后
在更新、切换或检出完成(无论成功与否)后调用。
连接之前
在尝试连接版本库前调用。每五分钟最多调用一次。
预锁定
Called before an attempt to lock a file.
Post-lock
Called after a file has been locked.
为特定工作目录定义的钩子。你只要指定顶级路径;如果在子目录内执行提交,TortoiseSVN 会自动向上搜索匹配路径。
接下来需要指定要执行的命令行,以钩子脚本或可执行文件的路径开始.它可以是批处理文件,可执行文件,或者有效的windows关联的其它文件,例如Perl脚本.注意,此命令不能使用UNC路径,Windows Shell由于安全限制而不允许这样的命令执行.
命令行包含一些由TortoiseSVN填写的参数,这些参数依赖于调用的钩子.每个钩子有对应的参数,按照以下的顺序调用:
开始提交
PATH
MESSAGEFILE
CWD
手动预提交
PATH
MESSAGEFILE
CWD
检出-提交
PATH
MESSAGEFILE
CWD
提交之前
PATH
DEPTH
MESSAGEFILE
CWD
提交之后
PATH
DEPTH
MESSAGEFILE
REVISION
ERROR
CWD
开始更新
PATH
CWD
更新之前
PATH
DEPTH
REVISION
CWD
更新之后
PATH
DEPTH
REVISION
ERROR
CWD
RESULTPATH
连接之前
no parameters are passed to this script. You can pass a custom parameter by appending it to the script path.
预锁定
PATH
LOCK
FORCE
MESSAGEFILE
ERROR
CWD
Post-lock
PATH
LOCK
FORCE
MESSAGEFILE
ERROR
CWD
上述各参数的含义如下:
PATH
A path to a temporary file which contains all the paths for which the operation was started in UTF-8 encoding. Each path is on a separate line in the temp file.
Note that for operations done remotely, e.g. in the repository browser, those paths are not local paths but the urls of the affected items.
DEPTH
提交/更新的深度。
可能的取值是:
-2
svn_depth_unknown
-1
svn_depth_exclude
0
svn_depth_empty
1
svn_depth_files
2
svn_depth_immediates
3
svn_depth_infinity
MESSAGEFILE
指向包含日志信息的提交文件.此文件使用UTF-8编码.在成功执行开始提交钩子后,日志信息会回显,以便于钩子修改.
REVISION
更新或提交完成后的版本库的版本
LOCK
锁定时
true
,或者未锁定时false
FORCE
Either
true
orfalse
, depending on whether the operation was forced or not.ERROR
指到包含错误信息的文件的路径, 如果没有错误的话,文件将是空的
CWD
脚本正在运行的工作目录,设置为所有受影响的路径的公用根目录.
RESULTPATH
A path to a temporary file which contains all the paths in UTF-8 encoding which were somehow touched by the operation. Each path is on a separate line in the temp file.
注意,尽管为了方便提供了这些参数名称,但是设置钩子的时候不是必须使用它们.不管是否需要,为特定钩子列出的参数都会传递. ;-)
如果你想Subversion 操作直到钩子完成才结束,就选择等待脚本结束。
Normally you will want to hide ugly DOS boxes when the script runs, so Hide the script while running is checked by default. Also you need to check this if your hook script might return an error that should stop the operation.
The force
flag can be set if the user must not proceed with the operation without running the script, i.e. the script must always run. If the force
flag is not checked, then the user is shown a button Retry without hooks to retry the operation without running the hook script.
Sample client hook scripts can be found in the contrib
folder in the TortoiseSVN repository. (“许可协议”一节 explains how to access the repository.)
When debugging hook scripts you may want to echo progress lines to the DOS console, or insert a pause to stop the console window disappearing when the script completes. Because I/O is redirected this will not normally work. However you can redirect input and output explicitly to CON to overcome this. e.g.
- echo Checking Status > con
- pause < con > con
在TortoiseSVN 的安装文件夹下有一个名为 ConnectVPN.exe
的小工具.在TortoiseSVN连接到代码库之前,可以使用这个连接前的钩子自动连接到VPN.
问题跟踪器集成
TortoiseSVN可以使用COM插件在提交对话框中查询问题跟踪器.在“从问题跟踪器中获取信息”一节
图 4.89. 设置对话框,问题跟踪集成页
点击 增加…按钮,在工作副本上使用这个插件.可以指定工作副本的路径.可以在所有注册过的问题跟踪器插件列表中,选择要使用的插件和要传递的参数.这些参数指定到插件,但是可能包含在问题跟踪器上的用户名,这样插件才能查找分配给用户的问题.
如果希望项目中的所有的用户使用同样的COM组件,可以为插件指定如下的属性,bugtraq:provideruuid
, bugtraq:provideruuid64
和bugtraq:providerparams
.
bugtraq:provideruuid
这个属性为COM组件的IBugtraqProvider接口指定UUID,例如,
{91974081-2DC7-4FB1-B3BE-0DE1C8D6CE4E}
.(这个例子是 Gurtle bugtraq provider的UUID,它是Google Code的问题追踪器.)bugtraq:provideruuid64
这和
bugtraq:provideruuid
相同,但是是针对IBugtraqProvider接口的64位版本.bugtraq:providerparams
这个属性指定了传递给IBugtraqProvider的参数.
请检查IBugtraqProvider 插件的相关文档,查明如何设置这两个属性.
TortoiseBlame 的设置
图 4.90. 设置对话框,TortoiseBlame 页面
TortoiseBlame 使用的配置被主上下文菜单控制,不是被 TortoiseBlame 自己直接控制。
颜色
TortoiseBlame 可以使用背景色指示文件中行的年龄。你设置最新和最旧版本的颜色后,TortoiseBlame 使用线性插补算法根据每行的版本设置其颜色。
You can specify different colours to use for the locator bar. The default is to use strong contrast on the locator bar while keeping the main window background light so that you can still read the text.
字体
你可以选择显示文本的字体和大小。它同时对文件内容,在左窗格显示的作者和版本信息等生效。
制表
定义在文件中出现的制表字符用多少空格扩展。
TortoiseUDiff 设置
图 4.91. 设置对话框,TortoiseUDiff 页面
The settings used by TortoiseUDiff are controlled from the main context menu, not directly with TortoiseUDiff itself.
颜色
The default colors used by TortoiseUDiff are usually ok, but you can configure them here.
字体
You can select the font used to display the text, and the point size to use.
制表
Defines how many spaces to use for expansion when a tab character is found in the file diff.
正在导出TSVN设置
图 4.92. The Settings Dialog, Sync Page
You can sync all TortoiseSVN settings to and from an encrypted file. The file is encrypted with the password you enter so you don't have to worry if you store that file on a cloud folder like OneDrive, GDrive, DropBox, …
When a path and password is specified, TortoiseSVN will sync all settings automatically and keep them in sync.
You can also export/import an encrypted files with all the settings manually. When you do that, you're asked for the path of the file and the password to encrypt/decrypt the settings file.
When exporting the settings manually, you can also optionally include all local settings which are not included in a normal export or in a sync. Local settings are settings which include local paths which usually vary between computers. These local settings include the configured diff and merge tools and hook scripts.
高级设置
一些不常用的设置只在设置对话框的高级页面上,这些设置直接修改注册表.需要知道这些设置是做什么用的以及它们做出了什么改动.除非确定需要修改这些设置,否则不要修改它们.
AllowAuthSave
Sometimes multiple users use the same account on the same computer. In such situations it's not really wanted to save the authentication data. Setting this value to
false
disables thesave authentication
button in the authentication dialog.AllowUnversionedObstruction
如果版本更新从版本库增加了一个新的文件,而此文件在本地是非版本控制的文件,默认的处理是保留本地文件,同时把它当作新文件的一个(可能的)修改版本.如果更希望TortoiseSVN在此情况下产生一个冲突,设置参数值为
false
.AlwaysExtendedMenu
和桌面一样,当上下文菜单打开的时候,按下Shift键,TortoiseSVN就会显示附件的命令.要强制TortoiseSVN总是显示这些拓展的命令,需要设置参数值为
true
.AutoCompleteMinChars
The minimum amount of chars from which the editor shows an auto-completion popup. The default value is
3
.AutocompleteRemovesExtensions
The auto-completion list shown in the commit message editor displays the names of files listed for commit. To also include these names with extensions removed, set this value to
true
.BlockPeggedExternals
File externals that are pegged to a specific revision are blocked by default from being selected for a commit. This is because a subsequent update would revert those changes again unless the pegged revision of the external is adjusted.
Set this value to
false
in case you still want to commit changes to such external files.BlockStatus
当另一个TortoiseSVN命令(如,更新,提交,…)正在执行的时候,如果不希望图形管理器更新TortoiseSVN图标状态,可以设置参数值为
true
.CacheTrayIcon
要为TSVNCache程序增加一个缓存托盘图标,可以设置这个值为
true
.这实际只是对开发人员有作用,它允许开发人员以优雅的方式终止程序.ColumnsEveryWhere
The extra columns the TortoiseSVN adds to the details view in Windows Explorer are normally only active in a working copy. If you want those to be accessible everywhere, not just in working copies, set this value to
true
. Note that the extra columns are only available in XP. Vista and later doesn't support that feature any more. However some third-party explorer replacements do support those even on Windows versions later than XP.ConfigDir
您可以为 Subversion 配置文件指定其他位置。这将影响到 TortoiseSVN 的所有操作。
CtrlEnter
In most dialogs in TortoiseSVN, you can use Ctrl+Enter to dismiss the dialog as if you clicked on the OK button. If you don't want this, set this value to
false
.Debug
如果希望在每一次在启动TortoiseProc.exe的命令行时都弹出对话框,可以设置这为
true
.DebugOutputString
Set this to
true
if you want TortoiseSVN to print out debug messages during execution. The messages can be captured with special debugging tools only.DialogTitles
The default format (value of 0) of dialog titles is
url/path - name of dialog - TortoiseSVN
. If you set this value to 1, the format changes toname of dialog - url/path - TortoiseSVN
.DiffBlamesWithTortoiseMerge
TortoiseSVN allows you to assign an external diff viewer. Most such viewers, however, are not suited for change blaming (“追溯不同点”一节
DlgStickySize
This value specifies the number of pixels a dialog has to be near a border before the dialog sticks to it. The default value is 3. To disable this value set the value to zero.
FixCaseRenames
Some apps change the case of filenames without notice but those changes aren't really necessary nor wanted. For example a change from
file.txt
toFILE.TXT
wouldn't bother normal Windows applications, but Subversion is case sensitive in these situations. So TortoiseSVN automatically fixes such case changes.
If you don't want TortoiseSVN to automatically fix such case changes for you, you can set this value to false
.
FullRowSelect
这个状态列表控件在多个对话框中使用(例如,commit, check-for-modifications, add, revert, …),可以选择整行(例如,如果选择一个项,这一行会被选中,而不仅仅是这一列).这很好,但是选中的行也覆盖了底部右侧的背景图片.设置参数值
false
可以取消选中整行.GroupTaskbarIconsPerRepo
This option determines how the Win7 taskbar icons of the various TortoiseSVN dialogs and windows are grouped together. This option has no effect on Vista!
The default value is 0. With this setting, the icons are grouped together by application type. All dialogs from TortoiseSVN are grouped together, all windows from TortoiseMerge are grouped together, …
图 4.93. 默认分组的任务条
If set to 1, then instead of all dialogs in one single group per application, they're grouped together by repository. For example, if you have a log dialog and a commit dialog open for repository A
, and a check-for-modifications dialog and a log dialog for repository B
, then there are two application icon groups shown in the Win7 taskbar, one group for each repository. But TortoiseMerge windows are not grouped together with TortoiseSVN dialogs.
图 4.94. Taskbar with repository grouping
If set to 2, then the grouping works as with the setting set to 1, except that TortoiseSVN, TortoiseMerge, TortoiseBlame, TortoiseIDiff and TortoiseUDiff windows are all grouped together. For example, if you have the commit dialog open and then double click on a modified file, the opened TortoiseMerge diff window will be put in the same icon group on the taskbar as the commit dialog icon.
图 4.95. Taskbar with repository grouping
If set to 3, then the grouping works as with the setting set to 1, but the grouping isn't done according to the repository but according to the working copy. This is useful if you have all your projects in the same repository but different working copies for each project.
If set to 4, then the grouping works as with the setting set to 2, but the grouping isn't done according to the repository but according to the working copy.
HideExternalInfo
If this is set to
false
, then everysvn:externals
is shown during an update separately.If it is set to
true
(the default), then update information for externals is only shown if the externals are affected by the update, i.e. changed in some way. Otherwise nothing is shown as with normal files and folders.GroupTaskbarIconsPerRepoOverlay
This has no effect if the option
GroupTaskbarIconsPerRepo
is set to 0 (see above).If this option is set to
true
, then every icon on the Win7 taskbar shows a small colored rectangle overlay, indicating the repository the dialogs/windows are used for.
图 4.96. Taskbar grouping with repository color overlays
IncludeExternals
By default, TortoiseSVN always runs an update with externals included. This avoids problems with inconsistent working copies. If you have however a lot of externals set, an update can take quite a while. Set this value to
false
to run the default update with externals excluded. To update with externals included, either run theUpdate to revision…
dialog or set this value totrue
again.LogFindCopyFrom
When the log dialog is started from the merge wizard, already merged revisions are shown in gray, but revisions beyond the point where the branch was created are also shown. These revisions are shown in black because those can't be merged.
If this option is set to
true
then TortoiseSVN tries to find the revision where the branch was created from and hide all the revisions that are beyond that revision. Since this can take quite a while, this option is disabled by default. Also this option doesn't work with some SVN servers (e.g., Google Code Hosting, see issue #5471).LogMultiRevFormat
A format string for the log messages when multiple revisions are selected in the log dialog.
你可以在你的格式字符串中使用接下来的占位符
- %1!ld!
- gets replaced with the revision number text
- %2!s!
- gets replaced with the short log message of the revision
LogStatusCheck
日志对话框显示了版本修订信息,其中工作路径以粗体显示.这需要日志对话框获取此路径的状态信息.对于一个非常大的工作副本来来说,这可能需要一些时间.设置参数值为
false
可以使这个特性无效.MaxHistoryComboItems
Comboboxes for URLs and paths show a history of previously used URLs/paths if possible. This settings controls how many previous items are saved and shown. The default is 25 items.
MergeLogSeparator
When you merge revisions from another branch, and merge tracking information is available, the log messages from the revisions you merge will be collected to make up a commit log message. A pre-defined string is used to separate the individual log messages of the merged revisions. If you prefer, you can set this to a value containing a separator string of your choice.
NumDiffWarning
If you want to show the diff at once for more items than specified with this settings, a warning dialog is shown first. The default is 10.
OldVersionCheck
不管是否有新版本可用,TortoiseSVN默认每周检查一次更新.如果有可用的更新,提交对话框会显示链接信息.如果更希望按照以前的方式来显示,也就是弹出对话框通知有更新,设置参数值为
true
.RepoBrowserTrySVNParentPath
The repository browser tries to fetch the web page that's generated by an SVN server configured with the SVNParentPath directive to get a list of all repositories. To disable that behavior, set this value to
false
.ScintillaBidirectional
This option enables the bidirectional mode for the commit message edit box. If enabled, right-to-left language text editing is done properly. Since this feature is expensive, it is disabled by default. You can enable this by setting this value to
true
.ScintillaDirect2D
This option enables the use of Direct2D accelerated drawing in the Scintilla control which is used as the edit box in e.g. the commit dialog, and also for the unified diff viewer. With some graphic cards however this sometimes doesn't work properly so that the cursor to enter text isn't always visible. If that happens, you can turn this feature off by setting this value to
false
.OutOfDateRetry
这个参数详列了TortoiseSVN在由于过期错误提交失败的情况下,如何表现:
- 0
The user is asked whether to update the working copy or not, and the commit dialog is not reopened after the update.
- 1
This is the default. The user is asked whether to update the working copy or not, and the commit dialog is reopened after the update so the user can proceed with the commit right away.
- 2
Similar to
1
, but instead of updating only the paths selected for a commit, the update is done on the working copy root. This helps to avoid inconsistent working copies.- 3
用户没有被要求更新工作副本。提交失败并显示过期的错误信息
PlaySound
If set to
true
, TortoiseSVN will play a system sound when an error or warning occurs, or another situation which is important and requires your attention. Set this tofalse
if you want to keep TortoiseSVN quiet. Note that the project monitor has its own setting for playing sounds, which you can configure in its settings dialog.ShellMenuAccelerators
TortoiseSVN 为上下文菜单设置快捷键.这可能导致快捷键重复(例如,
SVN Commit
使用快捷键Alt-C,但是这也是Copy
的快捷键).如果不希望使用或者不需要使用TortoiseSVN快捷键,设置参数值为false
.ShowContextMenuIcons
如果使用windows桌面或者遇到上下文菜单显示不正确的问题时,这很有用.如果不希望TortoiseSVN为shell上下文菜单选项显示图标,设置参数值为
false
.设置参数值为true
则可以再次显示图标.ShowAppContextMenuIcons
如果不希望TortoiseSVN为上下文菜单对话框显示图标,设置参数值为
false
.ShowNotifications
Set this value to
false
if you don't want the project monitor to show notification popups when new commits are detected.StyleCommitMessages
提交和日志对话框在提交信息中使用不同的字体风格(例如,粗体,斜体) (详情请见“提交日志信息”一节
UpdateCheckURL
这个值包含了URL,TortoiseSVN尝试从这个URL下载文本文件,以确定是否有可用的更新.这对于公司的管理员来说可能有用.他们更希望核准后才让用户更新TortoiseSVN.
UseCustomWordBreak
The standard edit controls do not stop on forward slashes like they're found in paths and urls. TortoiseSVN uses a custom word break procedure for the edit controls. If you don't want that and use the default instead, set this value to 0. If you only want the default for edit controls in combo boxes, set this value to 1.
VersionCheck
不管是否有新版本可用,TortoiseSVN默认每周检查一次更新.如果不希望TortoiseSVN做此检查,设置参数值为
false
.