git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: skillzero@gmail.com
To: "Shawn O. Pearce" <spearce@spearce.org>
Cc: Git Mailing List <git@vger.kernel.org>
Subject: Re: Restore annotated tag?
Date: Wed, 22 Sep 2010 11:38:13 -0700	[thread overview]
Message-ID: <AANLkTingnVMsRp8+r5-D=c-7mxfaMY1V06YXT2FQzAoL@mail.gmail.com> (raw)
In-Reply-To: <20100922182353.GO32601@spearce.org>

On Wed, Sep 22, 2010 at 11:23 AM, Shawn O. Pearce <spearce@spearce.org> wrote:
> skillzero@gmail.com wrote:
>> Is there a way to restore an annotated tag? One was accidentally
>> deleted and pushed. I can restore normal tags by just using git tag
>> again, but for an annotated tag, there's a tag object and I'm not sure
>> how to restore it.
>
> If the tag still exists, `git fsck --unreachable | grep tag` should
> show you output listing the dangling tag objects.  Once you have that
> list, use `git show SHA1` to view the object.  When you find the tag,
> make a reference to it with `git update-ref refs/tags/NAME SHA1`.

Thanks, that worked.

One thing I noticed that I wasn't sure about is that I SSH'd into the
server and ran git update-ref to restore the tag. That created the
symbolic name in .git/refs/tags/NAME to point to that tag object. But
what I noticed is that the only file listed in .git/refs/tags is the
tag I restored. There are other tags in the repository (and a fresh
clone gets them), but they don't show up in that directory. Is it
going to be a problem that ran git update-ref on the server (which is
a bare repository) rather than on a clone that I push? I just want to
make sure that the tag objects are referenced so they don't go away
after the 2 week garbage collection grace period.

  reply	other threads:[~2010-09-22 18:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-22 18:14 Restore annotated tag? skillzero
2010-09-22 18:23 ` Shawn O. Pearce
2010-09-22 18:38   ` skillzero [this message]
2010-09-22 18:39     ` Shawn O. Pearce

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='AANLkTingnVMsRp8+r5-D=c-7mxfaMY1V06YXT2FQzAoL@mail.gmail.com' \
    --to=skillzero@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=spearce@spearce.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).