- milestone: --> 2.1
One of the main things is the potential "gotcha" of doing
a Get on the wrong project node - i.e. not getting all of
the files modified in the
tree, because it is not possible to see this information.
Doing a "get" on the whole archive is not an option with
SJ's current performance of
a minimum ~1s per file (did you get any results after
looking at the log window bottleneck?).
So following on from your recent comments, I really think
that the project nodes must display if they are out of
date compared to your local
disk. True I don't know any other VCS that does this, but
we can try to excel :)
The problem is of course processing time isn't it - we
don't want the client to have to go down through all
sub-projects to see if they are
modified just to show that a top-level project node has
been modified.
The solution to this then, is to have the server provide
and maintain this information.
The server could quite easily flag all parent project nodes
with a "children last modified on XXXX" time stamp, if it
doesn't already. When a
sub-project node is modified via an add/check
in/remove/rollback the server would just need to traverse
up the node's parentage tree and set
this last modified date on the parent nodes. Then the
clients just need to check one node's info with the server
and compare lastmod dates. If
they are not equal, then show an "out of date" icon in
the node tree. It would be very fast I think.