使用深度immediates后跟深度无限时,奇怪的SVN行为(丢失文件)

时间:2013-08-07 21:25:22

标签: svn

好吧,我有这个奇怪的人来挑选你的大脑。


  • 存储库:
    • 修订版0:空
    • 修订版1:dir1/f1.txt
    • 修订版2:dir1/f1.txtdir1/f2.txtdir2/f3.txt

你的典型,对吧?


现在为了陌生。我得到了SVN 1.6.5和1.6.13的相似之处。我无法升级以试图摆脱这种情况。我在工作副本根目录中运行这些命令。

  • 命令
    1. svn update -r1 - 修订版1的更新成功,工作副本看起来不错。
    2. svn update --depth immediates - 一切正常,dir2被创建并且为空,没有其他更改。
    3. svn update dir1 --set-depth infinity - SVN说好,但dir1/f2.txt不会弹出我的工作副本。
    4. svn update - 只是因为我感到焦虑 - 没有,dir1/f2.txt仍然不会出现。
    5. svn update -r1 - 错误:dir1/f2.txt未受版本控制(WHOA?)
    6. svn update - 现在我得到了dir1/f2.txt

如果有人知道为什么dir1/f2.txt在我执行第3步时拒绝出现,如果有的话,我做错了,请分享。

1 个答案:

答案 0 :(得分:2)

这已被证实是SVN 1.6中的一个错误。解决方案是升级到SVN 1.7或SVN 1.8。

从马的嘴里(SVN开发名单):

  

2013年8月8日星期四下午1:34,菲利普马丁    写道:

svnadmin create repo
svnmucc -mm -U file://`pwd`/repo mkdir D1 put repo/format D1/f1
svnmucc -mm -U file://`pwd`/repo put D1/f2 mkdir D2 put repo/format D2/f3
svn co file://`pwd`/repo@1 wc
svn up --depth immediates wc
svn up --set-depth infinity wc/D1
svn st -v wc
     

1.7和1.8状态显示

             2        2 pm           wc
             2        2 pm           wc/D1
             2        1 pm           wc/D1/f1
             2        2 pm           wc/D1/f2
             2        2 pm           wc/D2
     

1.6状态显示

             2        2 pm           wc
             2        2 pm           wc/D2
             2        2 pm           wc/D1
             2        1 pm           wc/D1/f1
     

所以这是1.6中的一个错误,修正了1.7和1.8。

     

- 菲利普马丁| Subversion Committer WANdisco |不间断数据