Naturally, I'm still missing my labels ;-)

What exactly should label support in vss2svn look like? Obviously, we need to track labels internally to properly handle pinning to a label, but should we also try to replicate labels in some sort of "tags" directory?

Exactly, all labels should be in the "tags" directory. I think it would be sufficient to give the user a choice on the command line, to which directory we should add the labels.

My knowledge of labels in VSS isn't the greatest but I know that could get messy real quick. For example, it's possible to create a label on a directory, which is treated as recursive in VSS but is never actually written to the physical files of the subitems. It's also possible to label those individual items, and with the same label.

Labels are recursive for projects and local for files. Actually you have three type of labels:

1.) project labels
2.) file labels
3.) file version labels

The first two are simply recorded as actions in the apropriate item, so assigning a label is copying the revision of the item into the tags directory. I don't know how subversion handles a recursive copy. But it couldn't be that problematic. I think copy-from a directory is all we need here.

I only have a few problems with the third type. Assigning a label to a version will only record the label in the version record of the that record. So you don't know, when this label was assigned, only that it sticks to this version. I also don't know, how exactly this label promotion feature of VSS works. I have to check that. So what will happen, if we convert an item version, see that there is a label attached to it, copy it to the tags directory and later we see, that the same label was attached to one of the parent projects.

And then the next question, is it guaranteed, that all labels share the same name space and that they must be unique within this space? What will happen if you assin a label twice, and what will happen if the database is broken and the label is assigend to two different versions.

But I don't expect as many problems as with all other actions. So there could be a basic solution very soon (omitting the version labels)

Dirk

_______________________________________________
vss2svn-users mailing list
Project homepage:
http://www.pumacode.org/projects/vss2svn/
Subscribe/Unsubscribe/Admin:
http://lists.pumacode.org/mailman/listinfo/vss2svn-users-lists.pumacode.org

Reply via email to