[prev in list] [next in list] [prev in thread] [next in thread] 

List:       subversion-issues
Subject:    [Issue 714] New - svn revert on a missing dir should optionally check out a fresh copy of the dir
From:       issues () subversion ! tigris ! org
Date:       2002-05-31 18:52:52
[Download RAW message or body]

http://subversion.tigris.org/issues/show_bug.cgi?id=714

*** shadow/issues_15/714	Fri May 31 11:52:52 2002
--- shadow/issues_15/714.tmp.523	Fri May 31 11:52:52 2002
***************
*** 0 ****
--- 1,88 ----
+ +============================================================================+
+ | svn revert on a missing dir should optionally check out a fresh copy of th |
+ +----------------------------------------------------------------------------+
+ |      Issue #: 714                       Component: subversion              |
+ |       Status: NEW                         Version: current                 |
+ |   Resolution:                            Platform: Macintosh               |
+ |   Issue type: ENHANCEMENT              OS/Version: Mac OS X                |
+ |     Priority: P3                     Subcomponent: src                     |
+ +----------------------------------------------------------------------------+
+ |  Assigned To: issues@subversion.tigris.org                                 |
+ |  Reported By: Uther@tigris.org                                             |
+ |      CC list: Cc:                                                          |
+ +----------------------------------------------------------------------------+
+ |    Milestone: TargetMilestone: ---                                         |
+ |          URL:                                                              |
+ +============================================================================+
+ |                              DESCRIPTION                                   |
+ 'svn revert' on a missing versioned directory (yes, a corrupt working copy) 
+ should optionally check out a fresh copy of the dir.  If a versioned directory 
+ has been removed then the meta info is missing and hence there is no 
+ local way to get the dir back.  However, the data is on the server and it 
+ would be nice if svn recognised this and could optionally go to the server 
+ to get the data.  Using the parent's entries file there should be enough 
+ information to get the URL and revision of the missing data.
+ 
+ Note that currently svn just fails silently in this situation.
+ 
+ e.g.
+ 
+ Here we show the current behaviour, and show that the data can be 
+ recovered with a checkout.  It would be cool if the checkout was prompted.
+ 
+ [will@BATFISH:~:Fri 31, 2:42PM]
+ % mkdir svntest
+ [will@BATFISH:~:Fri 31, 2:43PM]
+ % cd svntest
+ [will@BATFISH:~/svntest:Fri 31, 2:43PM]
+ % svnadmin create repos
+ [will@BATFISH:~/svntest:Fri 31, 2:43PM]
+ % svn mkdir file:///Users/will/svntest/repos/trunk/ -m ""
+ 
+ Committed revision 1.
+ [will@BATFISH:~/svntest:Fri 31, 2:43PM]
+ % svn checkout file:///Users/will/svntest/repos/trunk/
+ Checked out revision 1.
+ [will@BATFISH:~/svntest:Fri 31, 2:43PM]
+ % cd trunk
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:43PM]
+ % mkdir testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:43PM]
+ % svn add testdir
+ A          testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:43PM]
+ % svn commit -m ""
+ Adding    testdir
+ 
+ Committed revision 2.
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % ls -a testdir
+ .    ..   .svn
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % rm -rf testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % ls
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % svn up
+ 
+ subversion/libsvn_fs/tree.c:177
+ svn_error: #21064 : <Filesystem has no such file>
+   file not found: transaction `2', path `/trunk/testdir'
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % svn revert testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % ls
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:44PM]
+ % svn st 
+ !      ./testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:45PM]
+ % svn co file:///Users/will/svntest/repos/trunk/testdir
+ Checked out revision 2.
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:45PM]
+ % svn st
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:46PM]
+ % ls
+ testdir
+ [will@BATFISH:~/svntest/trunk:Fri 31, 2:46PM]
+ % ls -a testdir
+ .    ..   .svn
\ No newline at end of file

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic