然而,偶尔Eclipse会把.svn目录放进bin目录。这并不会影响Subversion提交(因为Subversion命令行客户端遵循忽略整个bin目录的指令),但它会影响TortoiseSVN中的显示。
对于这个问题是否有已知的解决方法或变通方法?
(Eclipse 3.5,Windows Vista。)
看起来实际上发生的事情是eclipse在构建过程中从源目录中复制了.svn目录 -- 它认为这是要复制到输出二进制目录的“资源”。为了阻止它这么做,您可以将.svn/
添加为被过滤资源。对于您的工作区或项目,在属性对话框中转到:Java编译器 | 构建,并将“.svn”添加到“输出文件夹”下的“已过滤资源”的列表中。
我尚未尝试过,但我不会惊讶如果安装eclipse的其中一个子版本控制插件也会自动过滤掉 .svn 目录,因此任何安装了子版本控制插件的人都不会注意到这个问题。
经过漫长的搜索,从这篇文章和类似的帖子开始,我最终在http://www.damonkohler.com/2009/07/make-eclipse-ignore-svn-directories.html的帮助下解决了这个问题。
对我起作用的源文件夹模式略有不同,与博客上给出的模式稍有不同, 即“****/.svn/”** 而不是 “****/.svn***”
根据我的经验,在没有第一步的情况下,第二步(也被提到过作为一个解决方案)没有效果。
谢谢Daemon!
步骤:
1. 项目 > 属性 > Java构建路径 对于每个源文件夹,编辑“排除”以包括模式“****/.svn/”**
2. 项目 > 属性 > Java编译器 > 构建 > 启用项目特定设置 选中该框。
项目 > 属性 > Java编译器 > 构建 > 输出文件夹 > 过滤资源 添加“.svn/”,使其读取“*.launch, .svn/”
以上方法都对我无效,但是删除并重新创建Eclipse项目可以解决问题:
- 从Eclipse中删除您的项目(不要从磁盘中删除)。
- "文件" -> "新建.." -> "项目" -> "Android 项目"
- 在“新建 Android 项目”对话框中选择“从现有源代码创建项目”(在硬盘上找到您的项目)->“完成”
(按照link的说明)
嗯,这确实非常奇怪。请前往您的插件目录或查看“帮助”>“关于Eclipse”,检查您安装了哪些插件。查找包含svn、subversion或polarion的内容,如果有,则可能存在该插件干扰的问题。
如果没有,我认为您的subversion(Tortoise SVN)安装可能出现了问题。那么Eclipse引起此问题的可能性非常非常小。
顺便说一句,我曾经遇到过各种问题,不仅是Eclipse SVN插件支持(我希望svn插件能像Eclipse CVS支持一样好),而且有时候还会出现命令行subversion工具的问题。这可能与您使用的Subversion版本或您对svn的操作/未操作有关。请检查svn:ignore属性是否设置正确。您可以使用svn pl进行操作,在忽略bin时,如果属性未正确设置,则不要感到惊讶。请记住,在这种情况下,分隔符不是逗号,而是换行符。
祝你好运