6

我通过命令行运行了以下命令:

svn propset svn:ignore "*.classpath" .

我只想忽略该.classpath文件。

然而,这似乎把事情搞砸了,现在很多目录似乎都被忽略了。

我如何恢复它并重新开始?

4

2 回答 2

13

svn propedit svn:ignore .应该调出您的编辑器,您可以在其中一次删除一个有问题的忽略。

于 2013-02-02T04:44:11.517 回答
3

笔记

对于这个 svn:ignore 你有效地说“在当前目录中只忽略带有扩展类路径的文件”:Subversion 中文件名的模式只使用特定于操作系统的 glob 模式,而不是正则表达式

修复 DaFunix 的语法

  • somepath :中列出所有 svn 属性及其值。对于您的情况svn proplist -v <PATH>|<URL>

    svn proplist -v 。

我的 URL 的示例输出

>svn proplist -v http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/
Properties on 'http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk':
  bugtraq:logregex
    ([Ff][Ss])\s#
    (\d+)
  svn:mergeinfo
    /branches/Greetings:3-12
    /branches/i18n:18-20
  • 列出单个 svn:property 值(具有已知名称)svn propget <PROPERTY> <PATH>|<URL>:。对于您的情况

    svn propget svn:忽略。

我的 URL 的示例输出(与之前的 proplist 相同)

>svn propget bugtraq:logregex http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/
([Ff][Ss])\s#
(\d+)

proplist 和 propget 操作都是 RO,不会有任何改变

为了修复错误的属性定义,您可以

或者

删除坏属性并以正确的形式重新创建它:

svn propdel svn:ignore . & svn propset svn:ignore "classpath" .(也许使用带有 -R 选项的 propset 以递归方式定义整个子树的忽略)

或(如 John Brodie 建议)编辑和修复当前定义

svn propedit svn:ignore .并在编辑器窗口“*.classpath”更改为“classpath”,保存

PS不要忘记:

  • 提交添加属性的正确形式
  • 从版本化代码中删除之前(可能)添加的类路径文件:svn:ignore 仅影响未版本化的新文件,已添加到具有当前忽略模式的 repo 文件必须手动取消版本化
于 2013-02-02T16:17:49.783 回答