Re: Clarifying "invalid tag signature file" error message from git filter-branch (and others)
- From
Brandon Casey <casey@nrlssc.navy.mil>
- Date
- Dec 11, 2008, 23:13 UTC
- Message-ID
- <LhfS_uc2B_Gje7rXd1882RMsQfSRjOEsBT24Z1Yza_bWhgl9lI-ZhQ@cipher.nrlssc.navy.mil>
- In-Reply-To
- <c5df85930812111434m879f1faq80c64286714c3a1f@mail.gmail.com>
James Youngman wrote:
Show 21 quoted lines
> On Thu, Dec 11, 2008 at 9:06 PM, Brandon Casey <casey@nrlssc.navy.mil> wrote: >> James Youngman wrote: >>> What do the errors "error: char88: malformed tagger field" and "fatal: >>> invalid tag signature file" and "Could not create new tag object for >>> FINDUTILS-4_1-10" signify in the session below? >> It means the tagger field in the tag does not follow the correct form. >> Specifically the testing in git-mktag (called by filter-branch) does: >> >> * Check for correct form for name and email >> * i.e. " <" followed by "> " on _this_ line >> * No angle brackets within the name or email address fields. >> * No spaces within the email address field. >> >> What does 'git cat-file tag FINDUTILS-4_1-10' show you? > > Before conversion: > $ git cat-file tag FINDUTILS-4_1-10 > object ce25eb352de8dc53a9a7805ba9efc1c9215d28c2 > type commit > tag FINDUTILS-4_1-10 > tagger Kevin Dalley
The tagger field is missing an email address, a timestamp, and a timezone. It should look something like:
tagger Kevin Dalley <kevin.dalley@somewhere.com> 1229036026 -0800
git-mktag prevents improperly formatted tags from being created by checking that these fields exist and are well formed.
If you know the correct values for the missing fields, then you could recreate the tags before doing the filter-branch. If they are unknown, it seems valid enough to use the values from the commit that the tag points to.
i.e.
tagger Kevin Dalley <kevin@seti.org> 830638152 -0000
What tool was used to convert this repository to git? It should be corrected to produce valid annotated tags. Especially if it is a tool within git.
The tag below was actually not converted. filter-branch bailed out during the conversion and so left it alone.
Show 11 quoted lines
> The conversion: > > After conversion: > $ git cat-file tag FINDUTILS-4_1-10 > object ce25eb352de8dc53a9a7805ba9efc1c9215d28c2 > type commit > tag FINDUTILS-4_1-10 > tagger Kevin Dalley > > This is in the repo at > http://git.savannah.gnu.org/gitweb/?p=findutils.git;a=commit;h=ce25eb352de8dc53a9a7805ba9efc1c9215d28c2
-brandon