[svn]出现folder_is_already_under_version_control问题的解决办法

今天在提交项目时添加一个文件夹(folderName),结果svn出现了:Folder(文件夹)is already under version control这样的警告信息,并且怎么也提交不上。刚遇到此问题的时候感觉很奇怪,自己并没有在svn上添加这个目录(folderName),这里却提醒此目录(folderName)已经有version。而且svn上该目录状态也是?状态。经过查阅资料后才明白,原因是:我所添加的这个文件夹是从另一个项目中拷贝过来的,而且这个项目也是在svn上保存的,这样就导致我所提交的文件或目录是其他svn的东西,也就是说下面有.svn的目录,要解决此问题,删除要提交目录下的所有.svn文件即可,记住是该目录下所有.svn文件,注意递归子目录。

这里给出三种解决方式:其中前两种方法是递归删除该目录以及子目录下下所有.svn文件;第三种是本人用的比较笨的方法:也就是新建一个文件夹,然后将我们所需要的文件夹下的文件选中拷贝一份(记住不要拷贝目标文件夹,只拷贝里面需要的文件即可),最后将拷贝的文件放到新建的文件夹下,然后导入工程,避免有旧的.svn文件存在。

方法一:

打开终端,cd到你新增加的那个目录,然后用下面的命令

find . -mindepth 2 -name '.svn' -exec rm -rf '{}' \;
说明: -exec之后的rm -rf是命令以及参数,{}就是find的命令找到的结果集,\; 也是需要输入的哦

方法二:

同样是在终端里,cd到你新增加的那个目录,然后用下面的命令

find . -type d -name “.svn”|xargs rm -rf

方法三:

见上描述,本人觉得此方法是比较笨的方法,若有童鞋对命令行比较熟悉,可以采用以上高大上的方式,若像我一样对命令行了解不多,可以采用此方法,毕竟比较实用,哈哈!

    原文作者:Jingege
    原文地址: https://www.jianshu.com/p/1cf3fc28d7d1
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞