monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] m7 rises from the dead... reborn with new non-irrit


From: Hugo Cornelis
Subject: Re: [Monotone-devel] m7 rises from the dead... reborn with new non-irritating behavior!
Date: Sat, 11 Nov 2006 05:15:54 -0600

On 11/7/06, Larry Hastings <address@hidden> wrote:
m7 does
three main things:

parses its command-line looking for local revision numbers to expand into
revision hashes,
parses mtn's output looking for hashes to prepend with local revision
numbers,
implements tannotate.Apart from that, it is a simple thin wrapper around
mtn.  You should be able to call them interchangably, if you are sensitive
to where m7 changes the output format of monotone.  If you run into
problems, let me know and I'll see if I can fix it for you.


Ok, that is what I expected.

But!  Perhaps the best thing for you, since you're already scripting on top
of monotone, would be for you to pull out the revision numbers yourself.
It's easy: run
    mtn db execute "select _rowid_,id from revisions"
This will print a list like this:
    x | y
Each line represents one revision; "x" is that revision's "local revision
number", and "y" is the revision's hash.  The command is plenty fast; your
users will never notice.


Seems a bit low level to me.  I am using this keyword expander script
in three projects, two using monotone, and one using prcs.  Part of
the configuration of the keyword expander is how the underlying
version control system is dealing with keywords (prcs is very good
with keywords, but only supports local operations).  I am a bit afraid
that adding such low level stuff is going to complicate the
implementation of the keyword expander and perhaps break the
interoperability with other version control systems.

The benefit of the keyword expander is that building releases for any
of the three packages is done in a consistent way, and integration of
those packages becomes trivial (I hope, still have to work on it).
The keywords of those packages, the release label ao, have consistent
values representing the fact if the package was distributed as part of
the integrated whole or as an independent entity.  Not sure if this
explanation is clear, but I hope you get it.  In the end, I will hope
to do my release management with the same set of perl scripts for
several projects, some composed of others, some being atomic units.

Thanks ofr your replies, I will give m7 a look and see if I can use it.


Hugo



--
                   Hugo Cornelis Ph.D.

                 Research Imaging Center
  University of Texas Health Science Center at San Antonio
                   7703 Floyd Curl Drive
                San Antonio, TX  78284-6240

                   Phone: 210 567 8112
                     Fax: 210 567 8152




reply via email to

[Prev in Thread] Current Thread [Next in Thread]