我有一个文件夹c:\ sites\test,它包含从一个不再存在的存储库中签出的文件夹和文件。如何让Subversion停止跟踪该文件夹和任何子文件夹和文件?
我知道我可以简单地删除.svn文件夹,但是在很多层中有很多子文件夹。
我有一个文件夹c:\ sites\test,它包含从一个不再存在的存储库中签出的文件夹和文件。如何让Subversion停止跟踪该文件夹和任何子文件夹和文件?
我知道我可以简单地删除.svn文件夹,但是在很多层中有很多子文件夹。
当前回答
答案非常简单——导出文件夹到它自己!TortoiseSVN检测到这种特殊情况,并询问您是否希望使工作副本无版本控制。如果回答“是”,则控制目录将被删除,您将拥有一个普通的、未版本化的目录树。
其他回答
NetBeans IDE用户可以这样做:
在IDE中打开SVN项目 选择项目 右击 颠覆 出口 在对话框中 导出到文件夹 /var/tmp/projectname 按出口 等待 将显示完整 会问你要不要打开它,要不要打开就飞 你现在可以切换到Git:)
重要的一点是,当您使用shell删除.svn文件夹时,您需要使用-depth参数来防止find命令进入刚刚删除的目录并显示错误消息,例如:
“找到:。/。svn:没有这样的文件或目录"
因此,你可以像下面这样使用find命令:
cd [dir_to_delete_svn_folders]
find . -depth -name .svn -exec rm -fr {} \;
我使用rsync:
# copy folder src to srcStripped excluding subfolders named '.svn'. retain dates, verbose output
rsync -av --exclude .svn src srcStripped
如果您运行的是Windows,那么您可以在该文件夹中搜索.svn,这将列出所有文件。按Ctrl + A将选中所有这些,按delete将删除所有“讨厌的”Subversion内容。
试试svn export。
你应该可以这样做:
svn export /path/to/old/working/copy /path/to/plain/code
然后删除旧的工作副本。
TortoiseSVN也有一个导出特性,其行为方式与此相同。