Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从文件夹中删除SVN_Svn - Fatal编程技术网

如何从文件夹中删除SVN

如何从文件夹中删除SVN,svn,Svn,可能重复: 如果我想获取Subversion下的文件夹并删除所有指向Subversion的链接,我是否只需删除.svn文件夹就可以了?我还有什么要考虑的?< / P > P:是的。只需删除.svn文件夹,您的文件夹将不再受subversion的控制 .svn文件夹是签出时存储库的原始副本。因此,它充当服务器和工作副本之间的链接。一旦你删除它,你就会失去这个“链接” 编辑: 如果项目中有任何子文件夹,则每个子文件夹中都有一个.svn文件夹。因此,如果要删除subversion的链接,需要删除这些

可能重复:


如果我想获取Subversion下的文件夹并删除所有指向Subversion的链接,我是否只需删除
.svn
文件夹就可以了?我还有什么要考虑的?< / P > P:是的。只需删除.svn文件夹,您的文件夹将不再受subversion的控制

.svn文件夹是签出时存储库的原始副本。因此,它充当服务器和工作副本之间的链接。一旦你删除它,你就会失去这个“链接”

编辑:


如果项目中有任何子文件夹,则每个子文件夹中都有一个.svn文件夹。因此,如果要删除subversion的链接,需要删除这些.svn子文件夹。

否,删除
.svn
目录将删除与存储库的任何“连接”。


虽然一种更简单的方法可能是只导出该文件夹。

不,您只需搜索所有.svn文件夹并将其删除即可。或者,执行
svn导出
可以在不使用svn文件夹的情况下获取文件夹。

通常是的,删除.svn文件夹就足够了,但定义为“删除所有指向subversion的链接”。因为在版本化文件中有这样的功能。

命令svn export可以执行此操作。

您可以手动删除所有.svn文件夹

或者,您可以使用导出干净的目录树。请记住,它不会导出不受版本控制的文件


使用
svn export
的优点是,您可以在一个命令中获得原始副本并保留原始存储库。

我喜欢使用。它将“删除SVN文件夹”添加到资源管理器中的上下文菜单中。选择它会递归删除.svn文件夹,从而断开文件夹与svn的连接。正如其他人提到的,SVN导出的问题是,它只导出repo中的文件,而忽略您可能需要的所有隐藏文件。

在通过shell的unix系统上:

find . -type d -name .svn -exec rm -rf {} \; 
在Windows上:

  • 在文件夹上搜索“.svn”,选择全部并删除它们

找到以下windows命令行:


它对我有用。(如果要在批处理文件中使用此选项,请将“%%G”而不是“%G”)

使用OrtoiseSVN时,用鼠标右键将受版本控制的文件夹拖动到目标,然后从关联菜单中选择“SVN导出此处的所有项”



这将使用您的工作文件夹创建一个文件夹,而不使用.svn文件。

这样做了。看起来还可以,除了我的Resharper文件夹还有一个?因为我从来没有在SVN登记过。但是为什么他们会有一个?如果我删除了所有的.svn文件夹,那么在它们中…还有一些东西将我的主文件夹绑定到svn,这仍然告诉我这些Resharper文件夹不在版本控制中。这是为什么?我没有再竖琴,所以我不能告诉你为什么你有这个问题。但我可以告诉你们,一旦我删除了.svn文件夹,VisualStudio中的VisualSVN就不再显示状态图标了。是的,除了这个,我没有任何状态图标了?这是一个Subversion图标,因为我从未签入那些Resharper文件夹。删除所有的.svn文件夹后,我不明白为什么我甚至会收到?仍然覆盖在那些重拾器上folders@coffeeaddict:如果您仍然看到图标,则可能会遇到龟甲VN缓存问题。重新启动或终止TSVNCache进程应该会清除掉它。好吧,我通常不会抱怨否决票,但是为什么否决票会对这个答案产生影响呢?这并没有错(或者,如果是错的话,投票人应该说明它错的原因)。此外,仅删除.svn(或svn)目录只会告诉您的Subversion客户端(即TortoiseSVN)不要跟踪这些文件。它们当然仍然存在于Subversion服务器上。我正在清理包含我的.NET解决方案和项目的文件夹,使其不再与SVN有任何关联。您所说的版本化文件是什么意思。删除所有.svn文件夹后,是否不再有指向svn的链接?在诸如“$Revision:123$”$Author:someone$”之类的文件中可能会有注释,其文本由svn服务器自动插入,可以称为“指向svn的链接”我只是想知道除了.svn文件夹之外,这里是否还有其他需要删除的文件。在svn创建的.svn文件夹期限之外是否还有其他与svn相关的文件?只有OrtoiseSVN会保留您的本地修改。标准SVN导出将为您提供存储库中的版本。所以你会失去所有的局部修改。我用的是乌龟。我想要版本历史记录,所有的东西都被删除,就好像我的文件夹从来没有被挂接/链接到SVN一样。最好添加shell命令“Delete from SVN”,如本文所述。当然,只有在使用windows时才可以。请检查此链接是否包含要删除的脚本。svn flder注意:以前工作副本的每个文件夹中都有一个
.svn
文件夹。从Subversion v1.7开始,只有一个
.svn
,它位于工作副本的根文件夹中。删除
.svn
文件夹将使该文件夹不再是svn工作副本。添加-深度或查找将尝试递归到刚删除的.svn目录中,导致错误消息。提示为.Thx。但是我从来没有收到过这样的错误消息。@rm(和其他所有说导出的人):有一点不同:“导出”将创建一个未链接到subversion的副本,但SVN工作副本仍将保持链接。。。删除所有
.svn
文件夹将直接删除svn工作副本上的引用。工作正常…:)已断开执行此命令的目录下所有文件和文件夹的svn连接。
FOR /F "tokens=*" %G IN ('DIR /B /AD /S *.svn*') DO RMDIR /S /Q "%G"