Subject: Re: [RFC] [PATCH] remote: add new --fetch option for set-url

From: Junio C Hamano <[email-masked]>
Date: Wed, 19 Nov 2014 12:58:11 -0800

Jeff King <[email-masked]> writes:

> But here you do not have a pushurl defined in the first place. So I
> guess this is really just a shortcut for swapping the two, like:
>
>   git remote set-url --push gh $(git config remote.gh.url)
>   git remote set-url gh new-fetch-url

It seems that this swapping is only necessary because the repository
is set up in this way:

    $ browser github.com
    ... fork upstream to your own publishing repository ...
    $ git clone <your publish repo>
    ... oops, I am set up to fetch from myself ...
    $ git remote set-url --push mine <url for your publish repo>
    $ git remote set-url <url for your upstream repo>

If you are fetching from somebody else and then pushing into your
own publishing repository (i.e. fork of that upstream), why isn't
the sequence of event like this, instead?

    $ git clone $upstream
    $ browser github.com
    ... fork upstream to your own publishing repository ...
    $ git remote set-url --push mine <url for your publish repo>

Isn't this one of those bad workflows encouraged by GitHub, for
which you guys have to be punished ;-)?