Tagging multiple revisions with a keyword
Simon King
simon at simonking.org.uk
Tue Oct 18 10:50:36 UTC 2016
On Mon, Oct 17, 2016 at 10:11 AM, Alban Hertroys
<alban.hertroys at apollovredestein.com> wrote:
> Hello all,
>
> In preparation of our attempt to link our Hg repository to our Topdesk
> system (not much progress, it lacks priority), I started adding tags with
> Topdesk call numbers to some of our commits. I quickly found that a tag
> can only be applied to a single commit, so I'm probably using the tag
> feature for entirely the wrong thing. I remember tags from the old days
> when I was still using CVS, where it was used to mark releases among other
> things, so the result wasn't entirely a surprise.
>
> What I'm looking for is basically just a text label that can be stuck on a
> commit, preferably with the possibility to do that after commit-time. Is
> there something like that?
> There are other possible benefits to having those Topdesk call numbers in
> a separete "layer" of our repository, for starters they will probably be
> easier to parse programmatically.
>
> The alternative is that we need to be more careful about our commits and
> think whether we need to include a Topdesk call number in the commit
> message before performing the commit. If we forget to (likely, especially
> in the early stages) we need to change the history. I'm not too fond of
> that approach, to be honest and hope there is a better way.
>
> Note that most of my colleagues pretty much depend on TortoiseHg for their
> interface to the repository; do I need to teach them the command-line way
> for this?
>
The simplest solution is almost certainly just to keep a file in the
repository mapping commit hashes to call numbers. This has many
advantages: mistakes in it can be easily fixed by hand, it is
reviewable, auditable, mergeable etc. The minor downside might be that
you will have extra commits in your repository due to editing this
file (exactly as there are with tags and the .hgtags file)
If you don't like having that file in the repository, you could
maintain it outside the repository, perhaps even in a repository of
its own.
Simon
More information about the Mercurial
mailing list