我有一个相当大的项目(13 GB)和糟糕的互联网连接。我把我的工作目录的副本带回家 驱动器 - 但没有.svn目录,它会加倍 大小
我希望复制闪存驱动器的内容,然后将其转换为正确的工作目录。基本上是一个结帐,但是我的闪存驱动器提供了13 GB的文件。
这个聪明的想法因各种原因不起作用(E155017:校验和不匹配或“发现阻碍工作副本”)。
对于这些想法/实验中的许多,SVN会尝试再次通过我的连接下载整个内容(可能是因为它无法通过校验和将本地与远程进行比较?)
对于长篇解释感到抱歉,但我认为这对整个情况来说是必要的。
是否还有其他人尝试将复制的本地文件与现有的SVN存储库同步?
答案 0 :(得分:4)
.svn
目录包含每个版本化源文件的“干净”副本,这使得它如此之大。它也包含元数据,这将很难重建。
相比之下,可以从.svn
中的干净副本轻松重建工作文件。因此,另一种方法是仅复制 .svn
目录,然后运行svn revert -R .
以恢复工作文件而不再有网络流量。
答案 1 :(得分:2)
遗憾的是,没有.svn
目录的工作副本根本不是工作副本。您可以避免复制文本库(或者在Subversion 1.7中调用它们时的pristines),但是您不能完全忽略.svn
目录。
一些可能的补救措施:
您可能希望尝试使用某些DVCS作为断开工作副本的机制,因为它们在复制方面更具弹性。想到git-svn
。
您也可以将工作副本放到闪存驱动器上的文件中,然后将其解压缩到家中的磁盘上。