git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: Francis Moreau <francis.moro@gmail.com>
Cc: "git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: Save notes state when releasing
Date: Fri, 20 Sep 2013 06:34:01 -0400	[thread overview]
Message-ID: <20130920103401.GB21684@sigill.intra.peff.net> (raw)
In-Reply-To: <CAC9WiBh3ha61M789DL==Nch30P_mvGwDLODqNzwaAbmHtyhPkQ@mail.gmail.com>

On Fri, Sep 20, 2013 at 07:38:17AM +0200, Francis Moreau wrote:

> I'm using notes in my project. I'm wondering if it's possible to save
> the state of the notes when I'm releasing/tagging a new version of my
> project so I can restore the saved notes state if I checkout back the
> old release.
> 
> Therefore I would be able to inspect notes (which may have been
> removed or modified after the release) as they were when the release
> happened.

The notes are stored as git trees, so you can point a "tag" ref at a
particular state, just as you would with a normal branch. The "git tag"
command expects to create refs under "refs/tags", whereas "git notes"
expects to find notes under "refs/notes". The simplest thing is to just
use "git update-ref" rather than "git tag" to create the pointer. Like:

  $ git update-ref refs/notes/v1.0 refs/notes/commits

and then you can always view the v1.0 notes as:

  $ git --notes=v1.0 log

You can even set the notes.displayRef config to always show v1.0 notes
when they are available for a commit. Though if they are a subset of the
current notes, you would expect to see duplicates. Depending on what you
are storing in your notes, you may want to clean out your notes tree
after the release.

-Peff

  reply	other threads:[~2013-09-20 10:34 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-20  5:38 Save notes state when releasing Francis Moreau
2013-09-20 10:34 ` Jeff King [this message]
2013-09-23  7:25   ` Francis Moreau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130920103401.GB21684@sigill.intra.peff.net \
    --to=peff@peff.net \
    --cc=francis.moro@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).