2016-03-15 59 views
1

问题: Eclipse不会下载远程SVN存储库中存在的某些文件。我确实与Subclipse同步,但它一直告诉我,我的工作副本是最新的。但是,当我在WebSVN中查看项目时,可以看到远程存储库中还有其他文件。我甚至可以在Eclipse中看到空的Java包,它应该保存丢失的文件,但文件不在那里。我检查了文件系统,这些文件实际上已经丢失。本地SVN工作副本中缺少文件

我试着更新HEAD,在“团队”菜单中运行清理命令,并试图恢复Java包(但没有更改恢复)。我该如何解决这个问题并强制Eclipse/Subclipse重新检出缺失的文件?

我的设置:

  • 的Eclipse Mars.2版本(4.5.2)
  • Subclipse的1.10.11
+0

是一个子目录下这些文件? –

+0

是的,Java包由一个树形结构的子文件夹来表示。 – user1438038

回答

2

在SVN,有个东西叫Sparse Directories

从SVN书:

默认情况下,在目录最Subversion操作行为的 递归的方式。例如,svn checkout会创建一个工作副本 ,其中每个文件和目录位于存储库的指定区域中, 递归地通过存储库树下降,直到整个 结构被复制到本地磁盘。 Subversion 1.5引入了一个名为稀疏目录(或浅结帐)的功能,允许您轻松检出工作副本或工作副本的一部分 - 比完全递归更浅,可以自由引入先前忽略的 文件和子目录。

如果由于某种原因,你的checkout并不完全递归,该update命令将只根据检出的深度来更新文件。

要强制进行完全递归更新,在工作目录打开一个终端或cmd,然后键入命令:

svn update --depth infinity 
+1

我可以在命令行上使用'svn up --set-depth = infinity'来更新我的工作副本。不过,我想使用Eclipse的Subversive插件。插件中是否有这样的选项?奇怪的是,它过去曾经和Eclipse一起工作,但后来破产了。 – user1438038