From: Ramkumar Ramachandra <artagnon@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Git List <git@vger.kernel.org>
Subject: Re: [PATCH 5/6] status: do not depend on flaky reflog messages
Date: Sat, 15 Jun 2013 17:38:39 +0530 [thread overview]
Message-ID: <CALkWK0=R8h0_FUYMUFQ_qGC1Lf_Xvu84qigznYUK5MtzP8usPQ@mail.gmail.com> (raw)
In-Reply-To: <7vsj0jln23.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
> Two possibilities:
>
> (1) Assume that the other thread will produce a more reasonable
> semantics when finished; perhaps the first line will go away
> entirely, or maybe it would say something like "# Rebasing;
> head at $commit".
>
> Your topic does not _care_ what it would say, so you tweak the
> "status" test that is done during "rebase" so that they
> ignore the first lines; or
You said you didn't want to regress to show senseless information, and
I agreed with that. What is wrong with the patch I showed in the
previous email? Smudging is a bad hack, and must only be used as a
last resort: when an another topics updates status to say something
sensible, it will have to unsmudge the tests.
diff --git a/wt-status.c b/wt-status.c
index bf84a86..99c55e3 100644
--- a/wt-status.c
+++ b/wt-status.c
@@ -1182,7 +1182,7 @@ void wt_status_print(struct wt_status *s)
if (!get_sha1("HEAD", sha1) &&
!hashcmp(sha1, state.detached_sha1))
on_what = _("HEAD detached at ");
- else
+ else if (!state.rebase_in_progress)
on_what = _("HEAD detached from ");
} else {
branch_name = "";
> (2) Starting from the same assumption as above, but try to minimize
> the semantics change to user-visible behaviour this series
> makes.
The "try to minimize" is a somewhat admirable goal, but I have shown
that your midway solution is wrong. Either dedicate a lot of time and
effort towards improving status for rebase, or don't attempt it.
> That means that even though the _primary_ thing you want to do
> is to tweak "rebase" and its internal use of "checkout" in such
> a way that reflog will not record the implementation-detail
> checkout (because that will affect the next "checkout -"), make
> sure that "status" while doing "rebase" reports where the
> internal "checkout" of $ONTO detached HEAD from/at.
Unless we change the first line drastically to say: "rebase in
progress: rebasing onto $ONTO" (or something), I don't think this
makes sense. And if we were to do that, why not do it properly like
"rebase ($N/$M): onto $ONTO, upstream $UPSTREAM, branch $BRANCH"?
Other people on a different thread are already handling that, and I am
not interested.
So, you have three simple choices now:
1. Accept the simple patch I proposed above.
2. Propose an alternative patch quickly. *Patch*. No more English.
3. Reject all patches, and leave me no choice but to smudge.
Which one is it going to be?
next prev parent reply other threads:[~2013-06-15 12:09 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-13 13:32 [PATCH 0/6] Fix git checkout - with rebase Ramkumar Ramachandra
2013-06-13 13:32 ` [PATCH 1/6] t/checkout-last: checkout - doesn't work after rebase Ramkumar Ramachandra
2013-06-13 17:46 ` Junio C Hamano
2013-06-13 18:30 ` Ramkumar Ramachandra
2013-06-13 20:38 ` Junio C Hamano
2013-06-13 13:32 ` [PATCH 2/6] rebase: prepare to write reflog message for checkout Ramkumar Ramachandra
2013-06-13 17:51 ` Junio C Hamano
2013-06-13 18:05 ` Ramkumar Ramachandra
2013-06-13 13:32 ` [PATCH 3/6] rebase -i: " Ramkumar Ramachandra
2013-06-13 17:52 ` Junio C Hamano
2013-06-13 13:32 ` [PATCH 4/6] wt-status: remove unused field in grab_1st_switch_cbdata Ramkumar Ramachandra
2013-06-13 17:54 ` Junio C Hamano
2013-06-13 13:32 ` [PATCH 5/6] status: do not depend on flaky reflog messages Ramkumar Ramachandra
2013-06-13 18:07 ` Junio C Hamano
2013-06-13 18:15 ` Ramkumar Ramachandra
2013-06-13 18:48 ` Ramkumar Ramachandra
2013-06-13 21:02 ` Junio C Hamano
2013-06-14 6:27 ` Ramkumar Ramachandra
2013-06-14 13:52 ` Junio C Hamano
2013-06-14 14:01 ` Ramkumar Ramachandra
2013-06-14 14:52 ` Junio C Hamano
2013-06-14 15:08 ` Ramkumar Ramachandra
2013-06-14 16:31 ` Junio C Hamano
2013-06-14 21:36 ` Ramkumar Ramachandra
2013-06-14 22:16 ` Junio C Hamano
2013-06-14 22:36 ` Junio C Hamano
2013-06-14 23:07 ` Junio C Hamano
2013-06-15 8:02 ` Ramkumar Ramachandra
2013-06-15 9:58 ` Junio C Hamano
2013-06-15 12:13 ` Ramkumar Ramachandra
2013-06-15 8:44 ` Ramkumar Ramachandra
2013-06-15 9:51 ` Junio C Hamano
2013-06-15 12:08 ` Ramkumar Ramachandra [this message]
2013-06-16 5:57 ` Junio C Hamano
2013-06-16 6:07 ` Ramkumar Ramachandra
2013-06-15 10:26 ` Junio C Hamano
2013-06-13 13:32 ` [PATCH 6/6] checkout: respect GIT_REFLOG_ACTION Ramkumar Ramachandra
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='CALkWK0=R8h0_FUYMUFQ_qGC1Lf_Xvu84qigznYUK5MtzP8usPQ@mail.gmail.com' \
--to=artagnon@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.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).