我有一个文件夹c:\ sites\test,它包含从一个不再存在的存储库中签出的文件夹和文件。如何让Subversion停止跟踪该文件夹和任何子文件夹和文件?

我知道我可以简单地删除.svn文件夹,但是在很多层中有很多子文件夹。


当前回答

另一个(更简单的)Linux解决方案:

rm -r `find /path/to/foo -name .svn`

其他回答

只需删除所需文件夹中的.svn文件夹,然后控件将自动删除。

在Linux上,命令是:

svn delete --keep-local file_name

另一个(更简单的)Linux解决方案:

rm -r `find /path/to/foo -name .svn`

我使用rsync:

# copy folder src to srcStripped excluding subfolders named '.svn'. retain dates, verbose output
rsync -av --exclude .svn src srcStripped

重要的一点是,当您使用shell删除.svn文件夹时,您需要使用-depth参数来防止find命令进入刚刚删除的目录并显示错误消息,例如:

“找到:。/。svn:没有这样的文件或目录"

因此,你可以像下面这样使用find命令:

cd [dir_to_delete_svn_folders]
find . -depth -name .svn -exec rm -fr {} \;