强制Subversion将“未版本化”文件标记为已解决且为最新

时间:2012-02-14 08:34:10

标签: svn

我遇到网络问题,所以我没有直接退房,而是将同事的工作副本复制到我的电脑上。但是,他以某种方式忘记了根.svn文件夹(所有其他.svn文件夹都存在)。我尝试了以下方法:

$ svn checkout --depth empty <URL> .

这已经让svn将其识别为存储库,但所有内容都被标记为无版本。我怎么能告诉svn,基本上,“不,真的,这是同一个文件!!!请把它标记为更新!”

1 个答案:

答案 0 :(得分:1)

如果所有工作副本目录(包括根目录)中都没有.svn个文件夹,则无法执行任何操作。

摘自svn书:

  

.svn 文件夹也称为工作副本的管理目录。该   管理目录中的文件帮助Subversion识别哪些文件   版本化文件包含未发布的更改以及哪些文件   对于他人的工作已经过时了。

enter image description here

更具体地说,如图所示,.svn文件夹包含有关工作版本(工作副本具有的版本)的信息以及当前工作副本目录中所有文件的时间戳。

此信息有助于定义文件的状态。实际上,如下图所示,有四种可能的状态:

enter image description here

因此,如果没有.svn文件夹,就无法定义工作副本中的文件是否与远程存储库中的文件相同或不同,即使您知道它们是相同的 - subversion也不知道

结论:您应该复制与您的同事在其工作副本中完全相同的.svn文件夹。没有其他方法可以使它发挥作用。