Dirk <vss2svn <at> nogga.de> writes: > > Adam Ehven schrieb: > > > > Hi, > > > > I’ve been reading through the archives trying to get a general idea on > > label support in vss2svn. But it’s a little hard for a newbie to come > > into this discussion and find the bottom line. I would be very > > grateful if someone could summarize vss2svn’s current capabilities > > regarding porting labels from vss. > > > > Thanks very much, > > > > Actually the support is very simple: When a label is detected, the state > of the archive is copied to the "label" directory. In this action the > full project path is maintained, e.g consider the following structure > > $/ > $/Project > $/Project/SubProject > > And a label "rootlabel" is attached to the root project and a second > label "sublabel" is attached to the SubProject, you will find the > following structure in subversion > > * label/rootlabel/ -> Project/SubProject > * label/sublabel/Project/ -> SubProject > > This is done in order to solve the "Label promotion" feature of vss. If > you use the same label twice, they are considered the same. So in case, > when we hit the same label a second time, the state of the archive is > copied on top of the current label. >
Some additional comments: When the VSS database has multiple top-level projects with common labels, $/Project1 (labeled with '1.0' and '2.0') $/Project2 (labeled with '1.0', '2.0' and '2.1') a single directory for each label and subdirectories for each of the projects are created in the Subversion repository. labels/ 1.0/ Project1/ Project2/ 2.0/ Project1/ Project2/ 2.1/ Project2/ So, when searching for a particular label (tag), look first for the directory with the label text and then for a subdirectory with the project name. Dirk, I'm curious if you considered inverting the structure, like labels/ Project1/ 1.0/ 2.0/ Project2/ 1.0/ 2.0/ 2.1/ and determined this layout to have problems. Be aware that the Subversion repository can end up with nested 'labels' directories. This happens if the root of the VSS database was labeled. $/ (labeled '1.0') then later $/ (labeled '2.0') These labels are converted to labels/ 1.0/ 2.0/ labels/ (this directory is unexpected) 1.0/ If you perform a checkout/export of a tag (label), your working copy could contain more than what it would have with a corresponding Get of the label in VSS. To make a checkout/export work as expected, the unexpected 'labels' subdirectories need to be removed. _______________________________________________ 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 Mailing list web interface (with searchable archives): http://dir.gmane.org/gmane.comp.version-control.subversion.vss2svn.user