将maven项目提交到svn时,应该避免将target目录及eclipse配置文件 (.project,.classpath,.settings,.jar,lib)提交,因为这些文件都是可以从源代码和pom文件重新生成的,没有必要再进行版本控制, 如果提交到svn中反而容易引起冲突和不便.
svn提供两种机制来忽略特定文件的提交:
1.全局:这个全局其实是针对每个客户端的,也就是说只在当前电脑上有效(应该是电脑上的所有项目,未验证),编辑客户端的~/.subversion/config(*unix系统,windows的可以在安装了TortoiseSVN后在任意目录处右键->TortoiseSVN->Settings,在General选项卡右侧即可定义,也可在Global ignore pattern表达式下面点edit按钮手动编辑配置文件,其所在位置一般在当前用户的AppData/Roaming/Subversion/config)文件,找到倍注释掉的global-ignores配置,改成需要的,如:
global-ignores= .settings .project .classpath target .DS_Store
如果只是针对个人使用,那么第一种方法最方便,设置一下所有工程就都不管了.如果希望其他人不用设置,svn也会忽略这些文件,就要用下面的方法了.
2.针对目录的配置: 在目录上通过svn:ignore参数进行设置,只针对当前目录及子目录有效.对其它工程无效
1.svn检出代码,并在命令行进入项目目录.(如果有更改最好先提交一下.)
2.设置svn:ignore参数
svn propset -R svn:ignore ".settings .project .classpath target .jar lib" .