从版本控制中忽略资源

当对资源进行同步时,您可能不想将某些资源落实至存储库。提供了两种忽略工具,允许用户指定应该从更新和落实操作中排除哪些资源。

第一种是由“工作台”提供的全局忽略工具。第二种是 CVS 忽略工具,它读取特殊文件 .cvsignore 的内容以确定要忽略哪些内容。

同步时为什么要忽略文件?

有许多文件,用户可能不想将它们落实到存储库中。例如,外部编辑器可能会在项目中创建临时文件。编译 .java文件将会创建 .class 文件,类似地,许多构建操作将生成二进制文件。这些文件集中在一起可能会相当大。另外,每当执行构建时还可能会重新生成这些文件,并导致许多传出更改。通常,这些文件不是某个成员想与小组其它成员共享的文件或者一直存在于存储库中的文件。 

全局忽略工具

全局忽略工具是由“工作台”通过“小组”首选项页面提供的。有一个文件模式列表,资源首先与该列表进行匹配,然后才会被认为是版本控制候选。这些模式可能包含“*”和“?”通配符。“*”表示零个或多个字符的任何序列。“?”表示任何一个字符。例如,可以指定模式“*~”,该模式将与以“~”结尾的任何临时文件相匹配。在更新或落实操作期间,将忽略与任何一个模式相匹配的任何文件或目录。在指定要忽略的文件模式时,可以通过在列表中取消选择文件模式来临时禁止忽略它;不必从列表中除去指定的文件模式。

全局忽略工具中的模式是在同步期间与资源名称进行匹配的。注意,引导至资源名称的路径不包括在匹配中是很重要的。例如,对于文件“/path/to/file.txt”,只有字符串“file.txt”与模式匹配。此工具并非用于指定标准路径名,而是用于指定可全局应用的模式。

CVS 忽略工具

Eclipse CVS 客户机识别项目的每个目录中称为“.cvsignore”的文件。这是标准的 CVS 工具,现有的许多 CVS 项目都可以包含此文件。

此文本文件由一个文件、目录或模式列表组成。用与全局忽略工具类似的方法,通配符“*”和“?”可存在于 .cvsignore 文件中的任何条目中。将忽略当前目录中与任一模式相匹配的任何文件或子目录。必须注意到此文件的语义与全局忽略工具的语义的不同之处在于它仅应用于 .cvsignore 文件本身所在的目录中的文件和目录。项目可以在每个目录中包含一个 .cvsignore 文件。要了解更多信息,请访问 https://www.cvshome.org

可通过在其中一个导航视图中从资源的弹出菜单中选择小组 > 添加至 .cvsignore 来忽略尚未添加至 CVS 控制的资源。在“同步”视图中此菜单选项也是可用的。