On Fri, Nov 4, 2011 at 9:09 AM, C. Michael Pilato <cmpilato_at_collab.net>wrote:
> On 11/04/2011 08:36 AM, Mark Phippard wrote:
> > I can comment from a GUI tool perspective. In Subclipse, we have always
> had
> > this feature.
>
> [...]
>
> > FWIW, I think that the command line client should have always included
> > externals by default. I guess we cannot do that now, so having an
> option is
> > good. I kind of agree with Bert that I do not like the idea of making it
> > configurable.
>
> I'm confused, because my understanding was that the underlying commit APIs
> were not able to handle multi-working-copy commits (which would include
> externals) simultaneously until 1.7 because of code's inability to manage
> the ADM locks properly.
>
I think we had this conversation before and you mentioned having put most
of the code in place prior to 1.0 and it just was not finished. The way
SVN worked prior to 1.7 was that it was very easy to trick it. As long as
the common parent of a commit operation looked like a WC, then commit
worked. So in the case, of externals, it simply just worked. But in
Subclipse we were also to trick SVN into doing a single commit across
multiple working copies by dynamically creating a fake .svn folder in the
parent of the working copies. Prior to 1.6, we just had to create the
folder and I think an empty format/entries file. In 1.6, SVN started
looking at the UUID, so we had to stuff the UUID in the file in a way that
it was parsed. But we never had to do any of this for externals, only for
the Eclipse situations where each project is a distinct WC all on a common
parent that is not a WC.
1.7 fixed all of this for us and we do not have to hack it any more.
--
Thanks
Mark Phippard
http://markphip.blogspot.com/
Received on 2011-11-04 14:14:19 CET