On Thu, Jan 29, 2015 at 11:01:32PM +0100, Stefan Kueng wrote:
> >On Thu, Jan 29, 2015 at 07:26:01PM +0100, Stefan Kueng wrote:
> >What happens if one or more recursive externals definitions end up looping
> >back to an external that's already been traversed?
>
> The same that happens if you try to checkout/update such a setting: an
> infinite loop.
> Since such a setup would not work anyway, why bother trying to handle it?
Because the copy/branch dialog window will appear to hang forever? :)
> >Well, I'd rather avoid having to make commits to multiple repositories.
> >If this feature only works for externals pointing at the same repository
> >then it's quite limited, isn't it?
>
> It's limited, but not as much as you might think. Such recursive externals
> are most often used in company internal setups, and there they all point to
> the same repository. So for all those, that's a big help and really
> required.
How can we know that most people are using just one repository?
It's an assumption we can make, but we can't really know.
I think this is a severe limitation of the whole idea. And I'd rather not
encourage people to rely on externals within externals...
> >If you need something like this in the API we can definitely make it happen.
> >But I'd rather not implement a recursive externals crawl in svn_client_copy().
>
> A local crawl of a working copy is pretty fast.
> And always remember: even if it's slow, it's much faster than the user
> having to do this manually.
Of course. I wonder though whether many people really need this, or just
do it because TSVN makes it available.
On the other hand, since TSVN already provides this extra functionality
we'd have to implement it too to really provide a drop-in replacement
for your needs. Hmmm... this is a tough decision but I'm still not convinced
that what TSVN is doing here is something we'd want Subversion to do as well.
Received on 2015-01-29 23:17:23 CET