tg-tag: handle reflog entries with extra tabs
commit54c563f8c556604519181815baf36989ae0b92b5
authorKyle J. McKay <mackyle@gmail.com>
Wed, 8 Sep 2021 22:10:15 +0000 (8 15:10 -0700)
committerKyle J. McKay <mackyle@gmail.com>
Wed, 8 Sep 2021 22:10:15 +0000 (8 15:10 -0700)
tree6d84765671dd77588123b046691e9d9b1296a751
parent5f4bc24c9e8a2c2ede7174ab0852a458c92e04e6
tg-tag: handle reflog entries with extra tabs

It's very possible for a reflog entry to have more than one
tab in it.

The actual format of the reflog is one entry per line as detailed
in the `git help update-ref` documentation.

That documentation overlooks the possibility of there being more
than one "TAB" present in a single line (i.e. entry) of a reflog.

The relevant code that actually parses these lines can be found in
the Git file refs/files-backend.c in the show_one_reflog_ent function.

Behave more like the show_one_reflog_ent function when parsing
reflog entry lines to avoid any confusion over where the optional
message actually starts (if it's present).

Toggle the two affected unit tests in t6102 from `test_expect_failure`
to `test_expect_success` as they now pass with this change.

Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
t/t6102-tag-reflog-tabs.sh
tg-tag.sh