[Cvsnt] How can checkout CVSROOT/modules
Anthony Williams
anthwil at nortelnetworks.com
Mon Feb 11 12:35:24 GMT 2002
<Jo.Kilian at gmx.de> wrote in message news:25658.1013418041 at www11.gmx.net...
> >I'm not a WinCVS user (I prefer the command-line tool),
> >but all you will probably need is to convert:
> >
> > cvs history -c -a -l | awk '{sub(/[/].*/,"",$8); print $8;}' |
sort -u
> >
> >to Python. All the above does is:
> > a) collect the output of the cvs history
> > b) strip field 8 (delimited by spaces/tabs) of all
> > characters following the first '/' character
> > c) prints _only_ field 8 (throws away all other fields)
> > d) perform a unique sort (throwaway duplicates) of
> > the result.
> >
> >I imagine that would be quite easy in Python.
>
>
> It's qite easy in Perl too ... ;-)
But if any of your module or file names contain spaces (like the repository
I just imported from Microsoft Visual SourceSafe) then extracting "field 8"
is tricky as it is space-delimited. It should be noted that the module names
are followed by "==" (aligned to the same column in each row), and the start
of all the module names are in the same column.
Hence the module name is columns n-m where n and m are the same in every
line. The character at n-1 is a space on every line, the characters at m+1
and m+2 are "=", and there are at least 7 fields before column n. Note also
that character n-2 must NOT be a space for at least one line.
This won't catch everything, but it will help.
Anthony
--
Anthony Williams
Software Engineer, Nortel Networks Optical Components Ltd
The opinions expressed in this message are not necessarily those of my
employer
_______________________________________________
Cvsnt mailing list
Cvsnt at cvsnt.org
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
More information about the cvsnt
mailing list