【问题标题】:SVN Ignore Files when propset and prop edit not working当 propset 和 prop 编辑不起作用时,SVN 忽略文件
【发布时间】:2014-09-16 13:45:26
【问题描述】:

这是我每次更新时的 SVN 示例

    D     C 2d/flatImages/iEpic.png.meta
          >   local unversioned, incoming add upon update
    D     C 2d/flatImages/iegendary.png.meta
          >   local unversioned, incoming add upon update

我尝试了以下方法:

svn propedit svn:ignore "png.meta" .

svn propedit svn:ignore ".meta" .

svn propset svn:ignore "*.meta" .

(和其他一些人)

我似乎无法忽略这些不同类型的元文件,每次更新时我都必须手动解决 20-30 个问题。

这些属性设置是我做错了什么,还是有其他方法可以正确忽略所有 .meta 文件?

【问题讨论】:

    标签: svn


    【解决方案1】:

    您不能忽略已经添加到 Subversion 中的文件。

    正在发生的事情是应该预料到的。您有一个旧版本的存储库,并在本地添加了这两个文件。无论如何,后来修订版中的其他人添加了它们。当您更新您的修订版时,Subversion 会告诉您存在冲突。它想将这两个文件添加到您的工作副本中,但您已经拥有这些文件。

    处理此问题的最简单方法是将文件移开,然后进行另一次更新。然后,如果这些文件不应该在存储库中,请删除它们并提交更改。有人可能会将它们重新添加,并且可能会意外添加。

    假设您正在使用修订版 100,并且您删除了 2d/flatImages/iEpic.png.meta,因为它不应该存在。您提交修订版 101。

    另一个用户签出修订版 100(文件仍然存在)并修改 2d/flatImages/iEpic.png.meta。当他们更新到修订版 101 时,他们会遇到冲突:传入删除本地修改。如果他们通过接受工作副本或将问题标记为已解决来解决冲突,2d/flatImages/iEpic.png.meta 将被标记为添加。当他们提交修订版 102 时,2d/flatImages/iEpic.png.meta 将返回到存储库中,尽管有 svn:ignore

    您可以使用预提交挂钩来阻止将这些文件添加到存储库中。如果有人尝试添加它们,他们的提交将被拒绝。

    【讨论】:

    • 问题出在 Unity3D 引擎上。它动态创建所有这些元文件(基于每个资产)。有没有办法让 svn 忽略所有未来创建的 .meta 文件?
    • 如果您没有 SVN 1.8,您可以在您的 Subversion 客户端配置中设置 ignore-all 设置。如果您有 SVN 1.8,则可以使用继承的新 svn:ignore-all 属性。将其设置在 repo 的根目录下,它将在所有项目中被忽略。我有一个pre-commit hook,它将首先阻止任何人将这些文件提交到 repo 中。在几次失败的提交之后。开发人员将设置他们的 SVN 客户端自己忽略所有这些文件。
    • 绝妙的建议!我将研究实施这一点。谢谢!
    猜你喜欢
    • 2013-05-16
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-04
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    相关资源
    最近更新 更多