On Dec 2, 2014, at 2:28 PM, frame wrote:
> We use svn both on Linux and on PC.
>
> On Linux:
> $svn --version
> svn, version 1.6.11 (r934486)
> compiled Feb 12 2014, 06:45:35
>
> Copyright (C) 2000-2009 CollabNet.
> Subversion is open source software, see http://subversion.tigris.org/
> This product includes software developed by CollabNet (http://www.Collab.Net/).
> ...
>
> On PC cygwin:
> $ svn --version
> svn, version 1.7.7 (r1393599)
> compiled Oct 8 2012, 20:42:17
>
> Copyright (C) 2012 The Apache Software Foundation.
> This software consists of contributions made by many people; see the NOTICE
> file for more information.
> Subversion is open source software, see http://subversion.apache.org/
>
> I believe on PC we are using TortoiseSVN.
>
> Now I found that something I can make it work on Linux, but not on PC cygwin command line: let's say the root of our repository is http://a_a_a/b_b_b/ROOT
>
> svn checkout --depth empty http://a_a_a/b_b_b/ROOT root //<--I don't want EVERYTHING under root. I am a big fan of sparse checkout. I want to cherry-pick what i want to my local copy
> cd root //now, command "ls" shows nothing there, command "svn ls" shows all the directories under http://a_a_a/b_b_b/ROOT. Let's say there is a directory called "docs' and I want it and all the contents within it
> svn update --depth infinity docs
>
> Now there is docs/ inside root/ in my local area. Let's say one month later, I don't need docs/ any more. And I want to remove it from my local area, NOT FROM SVN REPO!
>
> On Linux, I can make it work(inside root/.):
> rm -Rf docs/
> svn update .
>
> docs/ directory won't be restored, because at root/ level, command "svn info ." shows the depth is empty and subversion understands I don't need docs/ anymore in my local copy.
>
> I want to do the same thing on PC cygwin and I can never make it. Please help.
I would guess the relevant difference is not Linux vs PC, but rather Subversion 1.6 vs 1.7. In Subversion 1.6 and earlier, each directory in a working copy held a .svn directory with tracking information about that directory. In Subversion 1.7 the working copy code was overhauled, as a result of which a single .svn directory now exists at the root of every working copy. So with Subversion 1.6, trashing a subdirectory of a working copy would also remove all tracking information about that subdirectory, whereas in Subversion 1.7 that would not be the case.
I'm not sure how to achieve what you want in Subversion 1.7 and later.
Note also that Subversion 1.6 and earlier are no longer supported.
Received on 2014-12-03 06:17:36 CET