Hi,
I just noticed something while doing a checkout
with svn:externals: the external repository is always
checked out from HEAD. I don't think this is a good
behaviour.
As an example imagine the following scenario:
user checks out a working copy of an ongoing
project, makes some changes, committs them
and then decides to make a tag of it.
A few weeks later someone else wants to
check out that tag. But since the external project
got updated during that time the project won't
compile anymore.
Now my suggestion would be to add a mark
to svn:external (on the server) when doing
a copy which holds the revision number of
the external project. Then on checkouts
that specific revision of the external project
is fetched. That way the project will always
compile even if the external project changes
often.
I'm not sure if this would be much work, but
I think it's definitely worth the effort.
Maybe something like this:
- Add an option to the svn copy command
(e.g. -tagexternals) which then either changes
the svn:external property itself or adds another hidden
property which indicates the revision.
- change the checkout command to follow the changed
svn:external property (or the additional property) and
checks out not from HEAD but from that revision
Stefan
Received on Thu Apr 24 17:57:45 2003