[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