Subclipse svn:ignore

176

我正在使用Subclipse连接到我的SVN。有一些文件夹和文件我想要添加到svn:ignore中,但是它是灰色的。有没有一种简单的方法让Subclipse忽略这些文件和目录?

subclipse

12个回答

282

已经提交到版本库中的文件不能被svn:ignore忽略。

因此,您必须:

  1. 从版本库中删除该文件。
  2. 将您的项目(工作副本)更新至最新版。
  3. 在Eclipse中重新创建该文件。
  4. 通过Team->Add to svn:ignore对该文件设置svn:ignore属性。
  5. 重启Eclipse以反映更改。

祝您好运!


43
实际上,这不是一个解决方案。我有同样的问题,我想要忽略的文件和文件夹没有被版本控制。但是我不能忽略它们,因为svn:ignore是灰色的。 - Jagger
3
@Henrik,好久不见了。你能告诉我如果我不想将已经在代码库中的文件(例如我的database.properties文件)提交到代码库中应该怎么做吗? - Khizar
12
@Jagger:要设置svn:ignore属性,父文件夹必须已经在svn中存在。 - mmoossen
1
在执行解决方案中提到的操作后,选择文件夹并使用快捷键(Ctrl + Alt + I)将其添加到忽略列表中。我不知道为什么这样可以而菜单不行,可能是个bug。 - Andrei B.
1
如果文件夹是由Eclipse自动生成的(例如target/或bin/),请先禁用“自动构建”! - Jack Miller
显示剩余11条评论

20

我能够直接使用TortoiseSVN在Windows资源管理器中完成此操作:

右键单击要忽略的文件->TortiseSVN->删除并添加到忽略列表

我需要关闭然后重新在Eclipse中打开项目,任务完成 :)


2
TortoiseSVN不是Subclipse。 - Muneeb Mirza
1
正确的。它不是。 - Robert Swift

17

似乎Subclipse只允许你将一个顶级文件夹加入到忽略列表中,而不是它下面的任何子文件夹。不确定为什么会这样。然而,通过试验发现,如果你直接将一个子文件夹添加到版本控制中,那么它将允许你将同一级别的另一个文件夹添加到忽略列表中。

alt text

例如,参考上图,在我想要忽略webapp文件夹但不添加src时,subclipse不允许我这样做。但是当我将java文件夹添加到版本控制中时,"add to svn:ignore..." 就可以用于webapp了。


这很奇怪,但对我也起作用了;如果您犯了一个错误并“添加”了新SVN存储库的顶级文件夹,则可以右键单击“Team> Disconnect ...”,然后选择删除SVN元信息。 - Daniel Sokolowski
我刚刚测试了一下,可以确认这个有效。这似乎很疯狂,可能是由于错误或设计问题,但它确实有效... - Stephane Grenier
迄今为止最佳解决方案。被接受的解决方案毫无意义! - Albert

12
如果您是第一次尝试在Eclipse中与SVN共享项目,您可能希望避免提交某些文件。为了做到这一点,请转到首选项 - >团队 - >忽略资源。在此屏幕上,您只需要添加一个模式以忽略您不想提交的文件类型即可。 Eclipse preferences

6

在 Eclipse Indigo Service Release 2 上使用 Subclipse

我将存储在 /src 下的临时文件和日志文件夹提交到 SVN 存储库中。后来发现“svn:ignore”被变灰了。

我找到以下解决方案:

1. 从项目源中删除该文件夹

2. 团队 -> 提交... 不包括该文件夹

3. 将该文件夹重新添加到项目树中

现在可以使用“团队 -> 添加到 svn:ignore...”选项了。


3

我只是一个猜测,因为我不是Subclipse的用户,但您是否确保包含您要忽略的内容的文件夹已被添加到SVN中?您无法在未受版本控制的文件夹中svn:ignore某些内容。


是的,包含该文件夹的文件夹在SVN中。 - KevMo

3

以下是我的做法:

  • 通过Tortoise设置svn:ignore属性:(.settings、.classpath、.project、target、.apt_src,每个一行)
  • 从Eclipse中删除该项目
  • 从svn上进行全新的checkout
  • 在Eclipse中导入该项目(简单地重新导入项目并不能解决问题)

2
我刚刚找到了如何做这个的方法:
当您将父文件夹添加到版本控制时,Eclipse会添加所有子文件夹。一旦子文件夹被添加到版本控制中,就无法忽略它们。
以下是操作步骤:
右键单击顶层文件夹并添加到版本控制 右键单击要忽略的子文件夹,选择还原 右键单击要忽略的子文件夹,选择svn:ignore(现在可用)

就是这样,终于解决了。谢谢。 - Johanna

1

要忽略某些文件或关闭忽略,您可以使用Eclipse首选项-->Team -->Ignored Resource。勾选或取消勾选要跟踪的资源。


0
如果您正在使用TortoiseSVN并且文件已经提交,请转到文件项目文件夹,右键单击要忽略的文件/文件夹,TortoiseSVN->取消版本控制并添加到忽略列表。 然后删除文件夹/文件(单击它,然后在键盘上按DELETE),右键单击项目文件夹,-> SVN提交... 这将从存储库中删除文件夹.... 现在,您可以再次创建文件夹/文件,然后它将被忽略。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接