【问题标题】:Subversion not ignoring my directory after setting property of ignore设置忽略属性后,Subversion 不忽略我的目录
【发布时间】:2012-10-25 16:53:01
【问题描述】:

我的应用程序中有一个名为 /admin/debug/output 的目录,其中包含一个目录和一堆 JavaScript 文件。在提交代码之前执行svn st 时,我想完全忽略它们的出现。

我像这样使用propset commant 忽略它,但它似乎没有效果:

svn propset svn:ignore admin/debug/output/ .(我是从根目录运行的)

property 'svn:ignore' set on '.'

为什么 SVN 在执行svn st 时仍然可以识别这一点?

【问题讨论】:

    标签: svn version-control command-line commit svn-propset


    【解决方案1】:

    SVN 只处理直接子目录和文件的被忽略目录。因此,您应该为父目录设置此属性,即

    $ cd admin/debug
    $ svn propset svn:ignore output . 
    $ svn ci -m "Adding SVN property to ignore output directory." 
    

    确保 输出 没有尾部斜杠。

    注意

    如果文件夹已经在版本控制下,那么下面的操作顺序应该 应用:

    $ svn delete --keep-local output 
    $ svn propset svn:ignore output . 
    $ svn ci -m "Adding SVN property to ignore output directory." 
    

    如果你有旧的 SVN (

    $ cp -rp output output_ 
    $ svn rm output 
    $ svn propset svn:ignore output . 
    $ svn ci -m "Adding SVN property to ignore output directory." 
    $ mv output_ output 
    

    您可以离开文件夹并将其中的所有文件标记为已忽略

    $ svn propset svn:ignore "*" .
    $ svn ci -m "Adding SVN property to ignore all files in output directory." 
    

    【讨论】:

    • 嗯,是的,这正是我所做的。我刚刚cd admin/debug/ 然后svn propset svn:ignore output .svn st 仍然显示所有JavaScript 调试文件。我使用了输出没有尾部斜杠。
    • 那个文件夹受版本控制吗?以及它是如何在 svn st 的输出上标记的?
    • 是的,/admin/debug/output 目录受版本控制。在执行 svn st 时,admin/debug/admin/debug/output 均显示为 M(已修改)。这些目录下的所有 JavaScript 文件都显示为无法识别,?
    • 因此,您应该将该文件夹设置为不受版本控制(使用 svn delete = 参见stackoverflow.com/questions/9317600/…)并进行 svn 更新,但应该在设置忽略属性之前完成
    • 您可以忽略目录中的所有文件 - 请参阅 blog.alastairdawson.com/2007/02/21/…。但这在 IMO 有点奇怪。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多