git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: "Philip Oakley" <philipoakley@iee.org>
To: "Junio C Hamano" <gitster@pobox.com>,
	"Jordan DE GEA" <jordan.de-gea@grenoble-inp.org>
Cc: <git@vger.kernel.org>, <mhagger@alum.mit.edu>,
	<erwan.mathoniere@grenoble-inp.org>,
	<samuel.groot@grenoble-inp.org>, <tom.russello@grenoble-inp.org>,
	<Matthieu.Moy@grenoble-inp.fr>
Subject: Re: [RFC/PATCHv2] Documentation: triangular workflow
Date: Mon, 6 Jun 2016 23:21:14 +0100	[thread overview]
Message-ID: <12C5A5F1276946DC99A03F30FEE49559@PhilipOakley> (raw)
In-Reply-To: xmqqk2i2w288.fsf@gitster.mtv.corp.google.com

From: "Junio C Hamano" <gitster@pobox.com>
> Jordan DE GEA <jordan.de-gea@grenoble-inp.org> writes:
>
>> +TRIANGULAR WORKFLOW
>> +-------------------
>> +
>> +In some projects, you cannot push directly to the project but have to
>> +suggest your commits to the maintainer (e.g. pull requests).
>> +For these projects, it's common to use what's called a *triangular
>> +workflow*:
>> +
>> +- Taking the last version of the project by fetching (e.g.
>> +  **UPSTREAM**)
>> +- Writing modifications and push them to a fork (e.g. **PUBLIC-FORK**)
>> +- Opening a pull request
>> +- Checking of changes by the maintainer and, merging them into the
>> +  **UPSTREAM** repository if accepted
>> +
>> +
>> +........................................
>> +------------------               -----------------
>> +| UPSTREAM       |  maintainer   | PUBLIC-FORK   |
>> +|  git/git       |- - - - - - - -|  me/remote    |
>> +------------------       ←       -----------------
>> +              \                     /
>> +               \                   /
>> +          fetch↓\                 /↑push
>> +                 \               /
>> +                  \             /
>> +                   -------------
>> +                   |   LOCAL   |
>> +                   -------------
>> +........................................
>
> I agree with other commenters that "PUBLIC-FORK" is a name that does
> not capture the essense of the triangular being the next step
> forward, compared to the "central shared repository" workflow, to
> take advantage of the distributed nature of Git.
>
> "Where you push so that somebody else can fetch from there" does not
> have to be public.  You may be submitting a course assignment there,
> only to be seen by your professor but not by others in the class.
> Also, you do not your call "LOCAL" a "LOCAL-FORK" and that is a good
> thing.  In a distributed world, everything is a fork, so adding
> "-FORK" to a name is pretty much meaningless.
>
> So neither "PUBLIC" nor "FORK" in "PUBLIC-FORK" is a good word to
> describe this thing.
>
> The only reason you are pushing there is because your "LOCAL" is
> either not accessible from outside world, and/or you do not want to
> give a direct access to it (otherwise you could have allowed an
> access to whoever is going to fetch from you direct access to
> "LOCAL" and be done with it without creating "PUBLIC-FORK").
>
> That is why I reminded that we earlier in the design phase called
> this "publish"; it is a place you give access to others a selected
> work of yours that you choose to give them access to.

Given that clarification I'd be happier to go with it being one's 'Publish' 
repo.

My initial reticence was because of the association of "publish" with vanity 
publishing and other forms of over-sharing and self promotion.

A clarification/explanation that calling it a 'publish' repo is about 
granting access, and possible open access, would make it more acceptable.

> Whether you
> are a leaf contributor, a student who got stuck and wants to ask
> suggestions from your friends after looking your code over, or an
> integrator of a big public project, I would view the act to push
> into such a place you give selective visibility to your work to
> others as publishing your work.

Agreed, in that context.

--
Philip 

  reply	other threads:[~2016-06-06 22:21 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-26 10:06 [RFC] Triangular Workflow: user friendly full implementation Jordan DE GEA
2016-05-26 11:04 ` Matthieu Moy
2016-05-26 18:30 ` Junio C Hamano
2016-05-30  8:46   ` [RFC] Triangular Workflow UI improvement Jordan DE GEA
2016-05-27  7:32 ` [RFC] Triangular Workflow: user friendly full implementation Philip Oakley
2016-05-30  9:07   ` [RFC] Triangular Workflow UI improvments Jordan DE GEA
2016-05-31 12:28     ` [RFC/PATCH] Triangular Workflow UI improvement: Documentation Jordan DE GEA
2016-05-31 14:33       ` Matthieu Moy
2016-06-01  9:32         ` Jordan DE GEA
2016-06-02 12:02         ` Michael Haggerty
2016-06-03  7:25       ` Philip Oakley
2016-06-03  9:52         ` Jordan DE GEA
2016-06-03 11:36           ` Matthieu Moy
2016-06-03 11:53             ` Jordan DE GEA
2016-06-05 21:28             ` Jordan DE GEA
2016-06-06  7:58               ` Matthieu Moy
2016-06-06 16:46                 ` Philip Oakley
2016-06-06 16:54                   ` Matthieu Moy
2016-06-06 19:21                     ` Philip Oakley
2016-06-07  7:03                       ` Matthieu Moy
2016-06-07 20:08                         ` Philip Oakley
2016-06-03 15:46         ` Junio C Hamano
2016-06-03 22:16           ` Philip Oakley
2016-06-06  9:48       ` [RFC/PATCHv2] Documentation: triangular workflow Jordan DE GEA
2016-06-06 19:23         ` Junio C Hamano
2016-06-06 22:21           ` Philip Oakley [this message]
2016-06-07  6:58             ` Matthieu Moy
2016-06-07  8:02               ` Jordan DE GEA
2016-06-07  8:38         ` [PATCHv3] " Jordan DE GEA
2016-06-07 19:12           ` Junio C Hamano
2016-06-08  8:37             ` Jordan DE GEA
2016-06-08 13:20             ` Matthieu Moy
2016-06-09 12:35           ` [PATCHv4] " Jordan DE GEA
2016-06-09 17:02             ` Junio C Hamano
2016-06-11 15:58               ` Ramkumar Ramachandra
2016-06-11 19:31                 ` Philip Oakley
2016-06-09 18:19             ` Philip Oakley
2016-06-10 16:47               ` Junio C Hamano
2016-06-11 19:25                 ` Philip Oakley
2016-06-13 18:35                   ` Junio C Hamano
2016-05-30  8:39 ` [RFC] Triangular Workflow UI improvement Jordan DE GEA

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

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=12C5A5F1276946DC99A03F30FEE49559@PhilipOakley \
    --to=philipoakley@iee.org \
    --cc=Matthieu.Moy@grenoble-inp.fr \
    --cc=erwan.mathoniere@grenoble-inp.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jordan.de-gea@grenoble-inp.org \
    --cc=mhagger@alum.mit.edu \
    --cc=samuel.groot@grenoble-inp.org \
    --cc=tom.russello@grenoble-inp.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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).