[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

SV: Re: Revision graph revisited

From: Hans-Emil Skogh <Hans-Emil.Skogh_at_tritech.se>
Date: 2006-02-09 08:58:40 CET

> So, I've implemented a first draft of this. But now I've got a
> little problem:
> if each url get's its own column in the graph, it will look *really*
> awful for e.g. the /tags/ folder. Think about it: each tag will get
its
> own column.
>
> Do you have a suggestion on how to prevent this or make the graph
> look nicer?

Sure!

When the column (where it should be placed) is chosen for an item, there
has to be a decision made if that item is a "tag" or not. A "tag" is
here defined by an item that has no modifications later on. (Copies and
deletes are not counted as modifications.)

Each column must be able to have a string path and a Boolean "tag"-state
associated with it.

If the item is a "tag", it should end up in a column dedicated for tags
that originate from the same source path as the item.

//// Confusing example start ////

I'll try to explain with a short use-case with a regular repository
layout:
Rev 1: Repository layout created
...some work is being done in trunk
Rev 35: /trunk is copied to /tags/0.1
...more work in trunk
Rev 43: /trunk is copied to /branches/featurex
...work is being done in trunk and featurex
Rev 58: /trunk is copied to /tags/0.2

When the graph is being laid out (on trunk), the following should
happen:
Rev 1: /trunk has modifications later on and no suitable column is
found, therefore a new column is created named "/trunk NOTAGS" and the
item is placed there.
Rev 34: /trunk has modifications later on and a suitable column is
found, the item is placed in "/trunk NOTAGS".
Rev 35: /tags/0.1 has NO modifications later on and no suitable column
is found, column "/trunk TAGS" is created and item placed there.
Rev 42: (Identical to rev 34.)
Rev 43: /branches/featurex has modifications later on and no suitable
column is found, column "/branches/featurex NOTAGS" is created and item
placed there.
Rev 57: (Identical to rev 34.)
Rev 58: /tags/0.2 has NO modifications later on and gets placed in
column "/trunk TAGS".

//// Confusing example end ////

The point being:
"Tags" should be placed in a column named after the source path (of the
copy operation) and with a "tags"-flag set. (In the confusing example
illustrated appended to the column name.)
Non-"tags" should be placed in a column named after the item's own path
with the "tags"-flag unset.

Maybe I'm complicating the description... If you still feel uncertain
about how to go about I'll try to make an illustration.

Hans-Emil

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Thu Feb 9 09:00:01 2006

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.