【问题标题】:svn propget svn:ignore . returns nothing, but svn is obviously ignoring my filessvn propget svn:忽略。什么都不返回,但 svn 显然忽略了我的文件
【发布时间】:2010-01-24 00:06:46
【问题描述】:

我正在尝试将现有的 iPhone 项目添加到 unfuddle.com 上的 subversion 帐户。

除了一些被忽略的 .a 文件外,一切似乎都很顺利。我知道它们被忽略了,因为除非我使用 --no-ignore 标志,否则我看不到它们处于 svn 状态。

当我跑步时

  svn propget svn:ignore .

我没有输出。为了确保我没有疯,我跑了

  svn propget --xml svn:ignore .

得到这个

<?xml version="1.0"?>
<properties>
</properties>

这意味着忽略属性中没有条目?

我如何找到这个忽略的来源?

【问题讨论】:

  • 当您尝试明确地svn add 文件时会发生什么(即返回什么)?
  • 对我来说听起来像是一个超级用户的问题......
  • 我认为开发工具的问题在 SO 上是公平的。
  • "svn add" 似乎工作得很好。它将文件状态从“I”更改为“A”。提交也很好。我没有意识到您可以通过显式命名文件来覆盖忽略。谢谢!但是我仍然很好奇这个设置在哪里,所以我可以从忽略列表中删除 *.a 文件。
  • 我的评论已被重述并扩展为下面的答案。

标签: svn svnignore


【解决方案1】:

新的一天。头脑清醒。

感谢您的帮助,它无疑将我引向了正确的方向。

答案是 subversion 本身内置了一个默认的全局忽略列表,而不是配置文件,这是 *.a 忽略的来源。

我的配置文件中的全局忽略如下所示:

 #global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo
 # *.rej *~ #*# .#* .*.swp .DS_Store

我认为这很好,因为我不想忽略任何事情。我错了,因为那时颠覆强制执行其几乎没有记录的默认全局忽略。我把它改成了这个,注意排除'*.a'

 global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.pyc *.pyo
  *.rej *~ #*# .#* .*.swp .DS_Store

此时 *.a 文件不再被忽略,我的 .DS_Store 文件仍然被忽略,一切正常。

正如 GraemeF 所建议的,propget 不会检索 svn:ignore 的全局值。正如 Ether 建议的那样,您可以通过显式命名来添加被忽略的文件。

我找到的最佳链接在这里: http://svn.haxx.se/users/archive-2009-02/0725.shtml

这篇文章告诉我,如果未在配置文件中设置 global-ignores,则使用 global-ignores 的非空默认值。

【讨论】:

  • 谢谢,这对我有用!如果您使用 Syncro SVN,请转到选项 > 全局运行时配置 > 编辑“配置”文件。进行上述更改,保存,重新启动和刷新。此外,您可以通过单击工具栏右上角的“设置”图标下的“显示忽略的文件”,在“工作副本”选项卡中查看忽略的文件。
【解决方案2】:

如果文件没有自动获取,您可以通过svn add &lt;filename&gt; 显式添加文件。

Subversion 配置文件可以忽略文件(“global-ignores”)——这些文件通常位于~/.subversion/config/etc/subversion/config,但也有其他位置;见http://svnbook.red-bean.com/en/1.4/svn.advanced.confarea.html

您使用什么命令来添加文件?如果是svn add *,会不会像以.开头的文件一样简单?

【讨论】:

    【解决方案3】:

    你也可以在你的 Subversion 配置文件中定义全局忽略的模式,所以 *.a 可能在那里被忽略。请参阅 Subversion 书籍的Config section

    【讨论】:

    • 我检查了 ~/.subversion/config ,但默认情况下“global-ignores”设置被注释掉了。我认为配置中设置的忽略将通过“svn propget svn:ignore”检索。
    • 我没有检查过,但我认为propget 不会包含它们,因为它们不是目录上的属性,因此。
    猜你喜欢
    • 1970-01-01
    • 2012-03-15
    • 2012-06-04
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多