我有一个文件夹c:\ sites\test,它包含从一个不再存在的存储库中签出的文件夹和文件。如何让Subversion停止跟踪该文件夹和任何子文件夹和文件?
我知道我可以简单地删除.svn文件夹,但是在很多层中有很多子文件夹。
我有一个文件夹c:\ sites\test,它包含从一个不再存在的存储库中签出的文件夹和文件。如何让Subversion停止跟踪该文件夹和任何子文件夹和文件?
我知道我可以简单地删除.svn文件夹,但是在很多层中有很多子文件夹。
当前回答
试试svn export。
你应该可以这样做:
svn export /path/to/old/working/copy /path/to/plain/code
然后删除旧的工作副本。
TortoiseSVN也有一个导出特性,其行为方式与此相同。
其他回答
在Windows上,你可以在资源管理器右键菜单中添加一个快速链接。 启动这个注册表脚本:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Folder\shell\DeleteSVN]
@="Delete SVN Folders"
[HKEY_CLASSES_ROOT\Folder\shell\DeleteSVN\command]
@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
这将添加一个名为“删除SVN文件夹”的项目到您的右键菜单。这将删除该文件夹中的所有。svn文件夹及其所有子文件夹。
来源(德语):http://www.sjmp.de/software/alle-svn-ordner-und-dateien-loeschen/
在Windows 7上,你只需要打开项目文件夹,然后搜索“”。如果启用隐藏文件,则删除所有找到的。Svn文件夹。
这些答案对我的情况都不满意。我在subversion 1.8上,我有一个工作副本,在第一个文件夹root中只有一个.svn文件夹。但是,我想从工作副本中删除一些分支。
无论我做什么,每当我运行“更新”时,它都会恢复这些文件并将它们全部带回来。我不想从存储库中删除它们,而只是从我的计算机中删除它们——但我需要保持其余的工作副本(因此不能仅仅删除.svn文件夹)。
解决方案吗?SVN update——set-depth exclude <dir>
这是排除特定目录的客户端“更新”。可以在svnbook.com的手册中找到。简而言之,它将其描述为:
从Subversion 1.6开始,您可以采用不同的方法。首先,查看完整的目录。然后在您不关心的子目录上运行svn update——set-depth exclude。
对于TortoiseSVN,你也可以通过右键单击你不想要的文件夹来做同样的事情,单击Update to revision…,然后将“更新深度”设置为“排除”,如下图所示:
最好最简单的方法
如果你认为你可以通过一个简单的魔法命令获胜,你就失败了!SVN真的很棘手,总是在Xcode中以某种方式返回一个新的错误消息。迟早,答应我…所以你得聪明点!
如你所知,Xcode下的常规和最佳实践是删除左边项目窗格中的文件。如果你错过了它,并以某种方式在Finder中删除了它,你就有麻烦了。大麻烦!但如果你做得好,你可以解决它,并节省时间。
首先,您需要删除SVN对文件或文件夹的引用,然后才能实际删除它
如果你能把文件/文件夹从垃圾箱里放回去,或者在你删除它的时候撤销最后一步,那么…… 去终点站——是的,那个不错的老终点站——然后去那个地方。 最好的方法是输入cd,然后将文件夹/文件拉到终端。你会得到类似的结果
cd /用户/用户名/文件/ Apps_Developing /…
你可以看看你在哪里
ls
命令列出您的文件。
然后使用svn命令删除svn引用: svn delete——keep-local fileName_toDelete
这将从SVN存储库中删除文件,但是您必须在Finder中手动删除它。
使用以下方法:
SVN rm——keep-local <文件夹名>删除文件夹和其中的所有内容。
SVN rm——keep-local <文件夹名>/*保留文件夹,但删除文件夹内的所有内容。
下面是一个例子:
~/code/web/sites/testapp $ svn rm --keep-local includes/data/*
D includes/data/json
D includes/data/json/index.html
D includes/data/json/oembed
D includes/data/json/oembed/1.0
D includes/data/json/oembed/1.0/embed1.json
D includes/data/json/oembed/1.0/embed2.json
D includes/data/json/oembed/1.0/embed3.json