我只是设法用 svn 进入一个奇怪的情况。就工作副本而言,我的一个文件似乎“丢失”了。当我查看服务器或在另一个位置重新检出包含文件夹时,该文件就在那里,但在这个特定的工作副本中,它似乎“丢失在空间中”。
svn status 报告没有变化(所以甚至没有丢失的文件)
svn update 什么都不做
我什至尝试将文件重新导出到我的工作副本,但没有效果。
- 这里发生了什么?
- 如何修复工作副本?
如果可能的话,我想避免不得不重新签出整个工作副本。
我只是设法用 svn 进入一个奇怪的情况。就工作副本而言,我的一个文件似乎“丢失”了。当我查看服务器或在另一个位置重新检出包含文件夹时,该文件就在那里,但在这个特定的工作副本中,它似乎“丢失在空间中”。
svn status 报告没有变化(所以甚至没有丢失的文件)
svn update 什么都不做
我什至尝试将文件重新导出到我的工作副本,但没有效果。
如果可能的话,我想避免不得不重新签出整个工作副本。
SVN 1.6.1 客户端(包括 TortoiseSVN)有一个错误,文件夹有时会错误地设置为深度“空”。这会导致您描述的症状。(请注意,该文件夹有可能被 svn 1.6.1 设置为“空”,并且即使您同时已经升级到更新的 svn 客户端,它仍然保持这种状态。)
要修复它,请使用 TortoiseSVN 中的“更新到修订”菜单项并选择深度“完全递归”。
你应该:
svn update --revision HEAD --depth infinity
svn cleanup
试首先,检查 subversion 是否与您所做的工作副本中的内容相同,与svn info
文件所在的目录中的内容相同。URL 是正确的分支吗?
接下来,检查您正在进行哪些未提交的更改svn update
。也许有什么东西删除了那个文件?如果是这样,只需还原 delete: svn revert <file>
。
接下来(在确保您已保存在此目录中更改的任何内容的副本之后),您可以简单地对整个目录进行核对并重新获取它:cd ..; rm -rf dir; svn update dir
. 那应该重新创建目录,其中包含您的文件。
我也有这个错误。问题当然存在于相关文件的.svn目录中。尝试将这个.svn目录替换为对应的新(部分)结帐目录。
尝试仅从本地结帐中删除该特定文件,然后再次进行更新。