git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: Olivier Marin <dkr+ml.git@free.fr>,
	git@vger.kernel.org, "Shawn O. Pearce" <spearce@spearce.org>
Subject: Re: [PATCH v2] remote show: fix the -n option
Date: Mon, 09 Jun 2008 18:10:49 -0700	[thread overview]
Message-ID: <7vd4mqdrhi.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: <alpine.DEB.1.00.0806091733230.1783@racer> (Johannes Schindelin's message of "Mon, 9 Jun 2008 17:35:13 +0100 (BST)")

Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:

> On Mon, 9 Jun 2008, Olivier Marin wrote:
>
>> diff --git a/builtin-remote.c b/builtin-remote.c
>> index c49f00f..efe74c7 100644
>> --- a/builtin-remote.c
>> +++ b/builtin-remote.c
>> @@ -421,10 +421,10 @@ static void show_list(const char *title, struct path_list *list)
>>  
>>  static int show_or_prune(int argc, const char **argv, int prune)
>>  {
>> -	int dry_run = 0, result = 0;
>> +	int no_query = 0, result = 0;
>
> Just for the record (not that I think anybody will care): I do not like 
> this change.

I do not think nobody cares ;-).

At least I care enough to point out that I think you are wrong in this
case.  "show -n" in the scripted version was never about "dry-run" but
was about "no-query".

The problem with the area of the code this patch touches is that compared
to the scripted version, show and prune now share their codepaths a bit
more, and it is less easy to keep -n disabled for prune (I think it is a
nonsense because you cannot "prune" sensibly without looking at what the
remote has.  It was a bug in the scripted version and losing it in C
rewrite was a "silent bugfix") while resurrecting -n for show (which is a
quick way to view where the URL points at without bothering to see what
remote branches there are).

I think a sensible thing to do would be to:

 - Agree that "-n" in the sense that "do not query" and "--dry-run" in the
   sense that "do not do anything but report what you would do" are
   different options.

 - Resurrect "show -n" as a quick way to view URLs without bothering to
   contact the remote end that is needed to show "the tracked branches"
   information.

 - Forbid "prune -n", which is nonsense.

 - Make "prune --dry-run" truly useful --- contact the other end, and
   report what will be pruned without really pruning them.

 - Perhaps as an enhancement, "show -n" could show what tracking branches
   we have from the remote, even though the information may be stale.
   The scripted version did not do this, I think, and it would be an
   improvement.

I am CC'ing Shawn who authored 859607d (Teach 'git remote' how to cleanup
stale tracking branches., 2007-02-02) to give him a chance to point out
why I am wrong in saying "prune -n" is nonsense.  Maybe there is a valid
use case for that option, even though I do not see one.

  parent reply	other threads:[~2008-06-10  1:11 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-08  0:54 remote show/prune: strange -n(--dry-run) option Olivier Marin
2008-06-08 11:03 ` [PATCH] Documentation/git-remote.txt: remove description for useless -n option Olivier Marin
2008-06-08 12:22 ` dkr+ml.git
2008-06-08 20:27   ` Junio C Hamano
2008-06-09  0:43     ` Olivier Marin
2008-06-09  0:48       ` [PATCH] remote show: fix the " Olivier Marin
2008-06-09  1:16         ` Johannes Schindelin
2008-06-09  2:06           ` Olivier Marin
2008-06-09  2:35             ` Johannes Schindelin
2008-06-09  4:16               ` Olivier Marin
2008-06-09  4:53                 ` Johannes Schindelin
2008-06-09 14:22                   ` Olivier Marin
2008-06-09 15:43                     ` Olivier Marin
2008-06-09 16:31                       ` Johannes Schindelin
2008-06-09 15:58         ` [PATCH v2] " Olivier Marin
2008-06-09 16:35           ` Johannes Schindelin
2008-06-09 16:58             ` Olivier Marin
2008-06-09 17:56               ` Johannes Schindelin
2008-06-09 18:37                 ` Olivier Marin
2008-06-09 20:11                   ` [PATCH] builtin-remote: make reuse of code easier by not die()ing Johannes Schindelin
2008-06-09 20:43                     ` Olivier Marin
2008-06-10  1:10             ` Junio C Hamano [this message]
2008-06-10  1:19               ` [PATCH v2] remote show: fix the -n option Shawn O. Pearce
2008-06-10  2:39                 ` Johannes Schindelin
2008-06-10 14:50               ` [PATCH 0/4] remote show/prune improvement Olivier Marin
2008-06-10 14:51                 ` [PATCH 1/4] remote show: fix the -n option Olivier Marin
2008-06-10 14:51                 ` [PATCH 2/4] builtin-remote: split show_or_prune() in two separate functions Olivier Marin
2008-06-10 14:51                 ` [PATCH 3/4] remote prune: print the list of pruned branches Olivier Marin
2008-06-12  7:00                   ` Junio C Hamano
2008-06-12 11:07                     ` Olivier Marin
2008-06-10 14:51                 ` [PATCH 4/4] remote show: list tracked remote branches with -n Olivier Marin
2008-06-10 19:12                   ` Junio C Hamano
2008-06-10 22:54                     ` [PATCH v2 " Olivier Marin
2008-06-10 15:09                 ` [PATCH 0/4] remote show/prune improvement Jakub Narebski
2008-06-10 16:10                   ` Olivier Marin
2008-06-10 17:11                     ` Jakub Narebski

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=7vd4mqdrhi.fsf@gitster.siamese.dyndns.org \
    --to=gitster@pobox.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=dkr+ml.git@free.fr \
    --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).