如何从 svn:ignore 中排除单个文件?

How do I exclude a single file from svn:ignore?

我有一个主要需要忽略的目录。它的一个文件很特殊,我想将它包含在版本控制系统中。要忽略的文件夹名称是hw-description,我要保留的文件名称是system.hdf.

我可以使用 TortoiseSVN -> Properties -> svn:ignorehw-description 添加到 svn:ignore 列表,并且它可以正常工作。即使我将 !system.hdf 附加到下一行,该文件仍然被忽略。

这样做的方法是什么?

使用svn命令行工具的解决方案

正如下面的罗伯特 ,我应该没有忽略包含的文件夹。通过将文件夹的 svn:ignore 属性 设置为 *,只有内容应该被忽略。因此,我只将 system.hdf 文件添加到版本控制中,而忽略了文件夹的其余部分。以下是它的相关命令:

# Add the folder to version control excluding the content
svn add hw-description/ --depth empty

# Add the specific file to version control
svn add hw-description/system.hdf

# Ignore the rest of the files via svn:ignore property
svn propset svn:ignore "*" hw-description/

请注意,父文件夹必须在 运行 上述命令之前添加到 SVN。

你不应该忽略整个文件夹,我会手动将一个文件添加到 SVN 并提交它,然后在该文件夹中为 *.

添加一个忽略条目

由于忽略条目不影响已添加的文件,一个文件将保持原样,其他文件将被忽略。