From: Peter Wu <peter@lekensteyn.nl>
To: Junio C Hamano <gitster@pobox.com>
Cc: Jeff King <peff@peff.net>, git@vger.kernel.org
Subject: Re: [RFC] [PATCH] remote: add new --fetch option for set-url
Date: Mon, 24 Nov 2014 23:16:03 +0100 [thread overview]
Message-ID: <27811375.1kgEM3BV3q@al> (raw)
In-Reply-To: <xmqqtx1ouug8.fsf@gitster.dls.corp.google.com>
On Monday 24 November 2014 14:04:07 Junio C Hamano wrote:
> Peter Wu <peter@lekensteyn.nl> writes:
>
> > I propose to add the option --fetch next to --push with the meaning "set
> > the fetch/push URL of remote NAME to URL". Then --fetch --push means
> > "set the fetch and push URL of remote NAME to URL".
>
> What would (and "should") the configuration look like after you did
> this?
>
> git remote set-url nick $url1
> git remote set-url nick --push $url2
> git remote set-url nick $url3
>
> Whatever happens without your patch after the above is what the
> current users (i.e. those who do not use the --fetch option) expect,
> so if the behaviour does not change with your patch, then there is
> one less incompatibilities to worry about.
>
> A new option "--fetch" introducing a different behaviour is
> perfectly fine; existing users who are not using it will not be
> harmed by sudden behaviour change.
As stated before, I took care to avoid backwards incompatibilities. The
command will still work as expected by the users who are aware of this
particular behavior. What I am suggesting (and which is independent of
the patch) is to make the command have a more consistent behavior.
Either it should set the fetch URL, or both the fetch and push URL, but
not vary its behavior depending on whether a push URL is set or not.
That should make the behavior of the command more consistent.
> > In a future git version, this could be made the default option to
> > avoid surprises (which would be backwards incompatible though).
>
> I am not sure what you mean "by default". If you mean "set both if
> remote.nick.pushurl does not exist but otherwise update only
> remote.nick.url", then the sequence
>
> git remote set-url nick $url1
> git remote set-url nick --push $url2
> git remote set-url nick $url3
>
> would retain the current behaviour, so it probably is OK.
>
> If you mean to always set remote.nick.url and remote.nick.pushurl
> pointing at the same value when neither --fetch nor --push is given,
> That would make the sequence behave quite different from what people
> would expect, and you would need to devise a transition plan to
> first start warning when the user did something that will behave
> differently between the current version and the future version
> without changing the behaviour, then switch the behaviour but keep
> warning and finally remove the warning, or something like that.
>
> And the above three-command sequence may not be the only case where
> the change you are proposing may hurt existing users.
The "default" refers to the behavior of "git remote set-url" in absence
of "--push" and "--fetch" options. A transition period is expected (if
this idea is put forward). Since nobody seems to be bitten by this
option, I am not sure if it really adds much value to make this change
though.
--
Kind regards,
Peter
https://lekensteyn.nl
next prev parent reply other threads:[~2014-11-24 22:16 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-19 15:18 [RFC] [PATCH] remote: add new --fetch option for set-url Peter Wu
2014-11-19 19:08 ` Jeff King
2014-11-19 19:42 ` Peter Wu
2014-11-19 20:17 ` Jeff King
2014-11-19 20:48 ` Peter Wu
2014-11-19 20:29 ` Junio C Hamano
2014-11-19 20:52 ` Peter Wu
2014-11-19 21:00 ` Junio C Hamano
2014-11-19 20:58 ` Junio C Hamano
2014-11-19 21:18 ` Junio C Hamano
2014-11-19 21:28 ` Peter Wu
2014-11-24 21:45 ` Peter Wu
2014-11-24 22:04 ` Junio C Hamano
2014-11-24 22:16 ` Peter Wu [this message]
2014-11-24 22:22 ` Jeff King
2014-11-24 22:47 ` Peter Wu
2014-11-24 22:54 ` Jeff King
2014-11-24 23:05 ` Junio C Hamano
2014-11-24 23:27 ` Peter Wu
2014-11-25 4:08 ` Jeff King
2014-11-25 4:55 ` Junio C Hamano
2014-11-25 5:01 ` Jeff King
[not found] ` <CAPc5daWh4hnKsTMpaW-TvCmVDfU+rzCezrAHcLgXDG6RVvzXHA@mail.gmail.com>
2014-11-25 11:43 ` Peter Wu
2014-11-25 11:36 ` Peter Wu
2014-11-29 13:31 ` Philip Oakley
2014-12-02 17:45 ` Peter Wu
2014-12-02 23:50 ` Junio C Hamano
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=27811375.1kgEM3BV3q@al \
--to=peter@lekensteyn.nl \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.