From: Junio C Hamano <gitster@pobox.com>
To: Karthik Nayak <karthik.188@gmail.com>
Cc: git@vger.kernel.org, ps@pks.im, toon@iotcl.com
Subject: Re: [PATCH v4] builtin/refs: add '--no-reflog' flag to drop reflogs
Date: Thu, 20 Feb 2025 07:14:07 -0800 [thread overview]
Message-ID: <xmqqikp4eji8.fsf@gitster.g> (raw)
In-Reply-To: <20250220095614.62042-1-karthik.188@gmail.com> (Karthik Nayak's message of "Thu, 20 Feb 2025 10:56:14 +0100")
Karthik Nayak <karthik.188@gmail.com> writes:
> The 'git-refs(1)' migrate subcommand, which transfers repositories
> between reference backends, currently migrates reflogs by default as of
> 246cebe320 (refs: add support for migrating reflogs, 2024-12-16).
"transfer" is a curious verb to use here, as it almost exclusively
is used in the context of fetch-and-push object transfer over the
wire.
The "git refs migrate" subcommand converts the backend used
for ref storage. It always migrates reflog data as well as
refs. Allow it to optionally discard reflog data. This is
useful because ...
or something?
> builtin/refs.c | 3 +++
> refs.c | 8 +++++---
> refs.h | 5 ++++-
> t/t1460-refs-migrate.sh | 28 ++++++++++++++++++++++++----
> 4 files changed, 36 insertions(+), 8 deletions(-)
I notice there is something missing.
> diff --git a/builtin/refs.c b/builtin/refs.c
> index a29f195834..c459507d51 100644
> --- a/builtin/refs.c
> +++ b/builtin/refs.c
> ...
> + OPT_BIT(0, "no-reflog", &flags,
> + N_("drop reflogs entirely during the migration"),
> + REPO_MIGRATE_REF_STORAGE_FORMAT_SKIP_REFLOG),
This is somewhat ugly, but parseopt API is nice enough to hide the
"--no-no-reflog" nonsense from the end users, so this is OK.
I think we are almost there but lack documentation updates?
Documentation/git-refs.txt | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git c/Documentation/git-refs.txt w/Documentation/git-refs.txt
index 9829984b0a..bb50d6f888 100644
--- c/Documentation/git-refs.txt
+++ w/Documentation/git-refs.txt
@@ -8,9 +8,9 @@ git-refs - Low-level access to refs
SYNOPSIS
--------
-[verse]
-'git refs migrate' --ref-format=<format> [--dry-run]
-'git refs verify' [--strict] [--verbose]
+[synopsis]
+git refs migrate --ref-format=<format> [--no-reflog] [--dry-run]
+git refs verify [--strict] [--verbose]
DESCRIPTION
-----------
@@ -43,6 +43,11 @@ include::ref-storage-format.txt[]
can be used to double check that the migration works as expected before
performing the actual migration.
+--reflog::
+--no-reflog::
+ Choose between migrating the reflog data to the new backend,
+ and discarding them. The default is "--reflog" to migrate.
+
The following options are specific to 'git refs verify':
--strict::
next prev parent reply other threads:[~2025-02-20 15:14 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-07 11:57 [PATCH] builtin/refs: add '--skip-reflog' flag to bypass reflog migration Karthik Nayak
2025-02-07 15:23 ` Patrick Steinhardt
2025-02-11 6:18 ` Karthik Nayak
2025-02-07 17:45 ` Justin Tobler
2025-02-11 6:09 ` Karthik Nayak
2025-02-11 11:42 ` [PATCH v2] " Karthik Nayak
2025-02-11 12:21 ` Patrick Steinhardt
2025-02-11 17:48 ` Junio C Hamano
2025-02-12 17:43 ` Karthik Nayak
2025-02-13 9:25 ` Karthik Nayak
2025-02-12 18:38 ` [PATCH v3] " Karthik Nayak
2025-02-12 22:25 ` Junio C Hamano
2025-02-13 9:22 ` Karthik Nayak
2025-02-13 18:06 ` Junio C Hamano
2025-02-14 8:50 ` Karthik Nayak
2025-02-19 10:06 ` Toon Claes
2025-02-19 17:04 ` Junio C Hamano
2025-02-19 20:28 ` Karthik Nayak
2025-02-19 21:37 ` Junio C Hamano
2025-02-20 10:00 ` Karthik Nayak
2025-02-20 9:56 ` [PATCH v4] builtin/refs: add '--no-reflog' flag to drop reflogs Karthik Nayak
2025-02-20 15:14 ` Junio C Hamano [this message]
2025-02-21 8:44 ` Karthik Nayak
2025-02-21 10:04 ` [PATCH v5] " Karthik Nayak
2025-02-21 17:54 ` Junio C Hamano
2025-02-23 20:30 ` Karthik Nayak
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=xmqqikp4eji8.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=karthik.188@gmail.com \
--cc=ps@pks.im \
--cc=toon@iotcl.com \
/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).