我在子版本控制方面是全新的,所以请多多包涵。
我使用 CollabNet 的 Subversion Edge 来管理我在 Eclipse IDE 中构建的基于 PHP/ActionScript 的项目的存储库。在我的项目的根文件夹中,Eclipse 包含了几个与项目没有直接关系的配置文件。如何设置我的存储库以通过 CollabNet 忽略这些文件/文件夹?会通过“存储库访问规则”吗?
感谢您的时间。
我在子版本控制方面是全新的,所以请多多包涵。
我使用 CollabNet 的 Subversion Edge 来管理我在 Eclipse IDE 中构建的基于 PHP/ActionScript 的项目的存储库。在我的项目的根文件夹中,Eclipse 包含了几个与项目没有直接关系的配置文件。如何设置我的存储库以通过 CollabNet 忽略这些文件/文件夹?会通过“存储库访问规则”吗?
感谢您的时间。
“第 3 章高级主题‘忽略未版本控制的项目’ ”似乎适合您的设置:
提炼:
[...] 但是这些未版本化的文件和目录可能会给 Subversion 用户带来一些烦恼。
例如,因为svn add
andsvn import
命令默认递归地执行,并且不知道给定树中的哪些文件您想要版本控制和不希望版本控制,所以很容易意外地向版本控制中添加您无意添加的内容。
而且因为svn status
默认情况下报告工作副本中的每个感兴趣的项目——包括未版本化的文件和目录——它的输出可能会在许多这些东西存在的地方变得非常嘈杂。因此,Subversion 提供了两种方法来告诉它您更喜欢哪些文件而它只是忽略。
- 其中一种方法涉及使用 Subversion 的运行时配置系统(参见“运行时配置区域”一节),因此适用于使用该运行时配置的所有 Subversion 操作,通常是在特定计算机上执行的操作,或通过计算机的特定用户。
- 另一种方法利用 Subversion 的目录属性支持,更紧密地绑定到版本树本身,因此影响拥有该树工作副本的每个人。这两种机制都使用文件模式。
Subversion 运行时配置系统提供了一个选项,
global-ignores
,其值是以空格分隔的文件模式集合(也称为 glob)。
Subversion 客户端根据文件名检查这些模式,这些文件名是添加到版本控制的候选文件,以及 svn status 命令注意到的未版本化文件。
如果任何文件的名称与其中一种模式匹配,Subversion 基本上会表现得好像该文件根本不存在一样。
这对于您几乎不想版本化的文件类型非常有用,例如 Emacs*~
和.*~
文件等编辑器备份文件