我正在创建一个eclipse项目,它会生成许多我不想保留在版本控制之下的文件。例如,它创建一个项目文件夹,如:
project/
bin/
horse.class
cow.class
src/
horse.java
cow.java
所以我做的是将项目文件夹添加到svn,如:
svn add project
这使得一切都得到控制,甚至是bin和.class文件。所有这些文件旁边都会有一个“a”。
如何从这些文件中删除“添加”状态?如果我尝试:
svn remove bin/horse.class
我必须使用--force选项,它会从磁盘中删除该文件。有没有办法简单地从源中删除它但不从磁盘中删除文件?
由于
答案 0 :(得分:4)
如果你有最新版本的SVN(至少1.5),你可以使用
svn remove --keep-local bin/horse.class
答案 1 :(得分:2)
您可以使用svn revert
命令。
还原:恢复原始工作副本文件(撤消大多数本地编辑)。
用法:恢复路径......
由于未添加文件的原始状态,因此它适用于您。
svn revert bin/horse.class
答案 2 :(得分:0)
svn rm --keep-local bin/horse.class
应该可以解决问题,但我建议使用subclipse。安装非常简单,它比命令行工具更加集成(我相信你可以想象)。
答案 3 :(得分:0)
不能直接回答你的问题,但我建议你为eclipse试用一个svn插件,例如:subclipse。
它会自动为您添加正确的文件。
答案 4 :(得分:0)
在添加之前设置svn的ignore属性以忽略您不想添加的文件。请注意subversion配置文件中global-ignores
部分中的[miscellany]
。在Linux上,这是~/.subversion/config
,在Windows上是%USERDIR%\Application Data\Subversion\config
。但是,这仅适用于可以与全局模式匹配的文件(例如以.class
结尾的所有文件等。)
在下面显示的布局中,我不会简单地添加project
,而只添加应该受版本控制的文件 - 假设project/bin/horse.class
是唯一要省略的文件,您可以简单地执行添加为svn add --parents project/src; svn add --parents project/bin/cow.class
。