git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Philip Oakley <philipoakley@iee.email>
To: Felipe Contreras <felipe.contreras@gmail.com>,
	Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org, "Elijah Newren" <newren@gmail.com>,
	"Mathias Kunter" <mathiaskunter@gmail.com>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	"Ramkumar Ramachandra" <r@artagnon.com>,
	"Jeff King" <peff@peff.net>, "René Scharfe" <l.s.r@web.de>,
	"Matthieu Moy" <git@matthieu-moy.fr>
Subject: Re: [PATCH v2 6/6] doc: push: explain default=simple correctly
Date: Tue, 1 Jun 2021 16:57:01 +0100	[thread overview]
Message-ID: <a385c279-5902-40af-f54d-85b950bbb497@iee.email> (raw)
In-Reply-To: <60b62420858c4_e409520828@natae.notmuch>

On 01/06/2021 13:12, Felipe Contreras wrote:
> So it's more like:
>
>   centralized = ~decentralized
>   triangular = ~two-way
>
> A centralized workflow consists of a single repository where branches
> are typically two-way, but not necessarily.
>
> A decentralized workflow consists of multiple repositories where
> branches are typically triangular, but not necessarily.
>
> So the triangularity is per branch, not per repository, and same_repo
> means a two-way branch, could be a centralized or decentralized
> workflow.
My personal viewpoint is that triangular flow happens when you cannot
push to the repo you consider as upstream.

Rather you typically have a publish/backup repo instead (semi-public,
semi-private - few are interested ;-).

That (can't push one way around the triangle) part of the flow is
separate from the distinction between patch flows and merge (Pull)
request flows.

E.g. My personal Git repo can be triangular with both git.git and
git-for-windows, plus a few (what I view as) fetch-only repos from other
collaborators/maintainers beyond the triangular 'golden' upstream repo.

I often consider GitHub as a centraliser, but I don't think it's what is
being considered above.

--
A thought did come to mind that a Git serve/repo (typically bare) should
be able to offer a 'refs/users/*' space (c.f. refs/remotes used by
individual users) that allows a type of 'centralised' operation (almost
as if all the users used a common alternates repo). Users could only
push to their own /user refs, but could pull from the main refs/heads,
and their own refs/users/ space.

This would give flexibility to smaller corporate central operations to
offer 'triangular flow' where each dev would feel like they have their
own 'push' repo, when in reality it's really personalised branches. As
usual the authentication of user names being handed off elsewhere;-). It
could avoid some of the --alternate management aspects.

It's a thought..

--

Philip

  reply	other threads:[~2021-06-01 15:57 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-29  7:11 [PATCH v2 0/6] Unconvolutize push.default=simple Felipe Contreras
2021-05-29  7:11 ` [PATCH v2 1/6] push: hedge code of default=simple Felipe Contreras
2021-05-31  4:44   ` Junio C Hamano
2021-05-31  7:50     ` Felipe Contreras
2021-05-29  7:11 ` [PATCH v2 2/6] push: move code to setup_push_simple() Felipe Contreras
2021-05-31  5:04   ` Junio C Hamano
2021-05-31  8:03     ` Felipe Contreras
2021-05-29  7:11 ` [PATCH v2 3/6] push: reorganize setup_push_simple() Felipe Contreras
2021-05-31  5:04   ` Junio C Hamano
2021-05-29  7:11 ` [PATCH v2 4/6] push: simplify setup_push_simple() Felipe Contreras
2021-05-31  5:04   ` Junio C Hamano
2021-05-29  7:11 ` [PATCH v2 5/6] push: remove unused code in setup_push_upstream() Felipe Contreras
2021-05-29  7:11 ` [PATCH v2 6/6] doc: push: explain default=simple correctly Felipe Contreras
2021-05-30 18:19   ` Mathias Kunter
2021-05-30 19:09     ` Felipe Contreras
2021-05-31  7:12       ` Mathias Kunter
2021-05-31 15:14         ` Felipe Contreras
2021-05-31 16:54           ` Mathias Kunter
2021-05-31 17:31             ` Felipe Contreras
2021-05-31 18:38               ` Mathias Kunter
2021-05-31 21:15                 ` Felipe Contreras
2021-05-31 21:54                   ` Mathias Kunter
2021-05-31  5:14   ` Junio C Hamano
2021-05-31  8:11     ` Felipe Contreras
2021-06-01  9:44       ` Junio C Hamano
2021-06-01 12:12         ` Felipe Contreras
2021-06-01 15:57           ` Philip Oakley [this message]
2021-06-01 16:35             ` Felipe Contreras
2021-06-01 19:39               ` Philip Oakley
2021-06-01 23:53                 ` Felipe Contreras
2021-06-01 19:34           ` Junio C Hamano
2021-05-29  7:44 ` [PATCH 00/15] push: revamp push.default Felipe Contreras
2021-05-29  7:44 ` [PATCH 01/15] push: create new get_upstream_ref() helper Felipe Contreras
2021-05-29  7:44 ` [PATCH 02/15] push: return immediately in trivial switch case Felipe Contreras
2021-05-29  7:44 ` [PATCH 03/15] push: reorder switch cases Felipe Contreras
2021-05-31  6:34   ` Junio C Hamano
2021-05-31  8:14     ` Felipe Contreras
2021-05-29  7:44 ` [PATCH 04/15] push: factor out null branch check Felipe Contreras
2021-05-29  7:44 ` [PATCH 05/15] push: only get the branch when needed Felipe Contreras
2021-05-31  6:44   ` Junio C Hamano
2021-05-31  8:16     ` Felipe Contreras
2021-05-29  7:44 ` [PATCH 06/15] push: make setup_push_* return the dst Felipe Contreras
2021-05-29  7:44 ` [PATCH 07/15] push: trivial simplifications Felipe Contreras
2021-05-29  7:44 ` [PATCH 08/15] push: get rid of all the setup_push_* functions Felipe Contreras
2021-05-31  6:44   ` Junio C Hamano
2021-05-29  7:44 ` [PATCH 09/15] push: factor out the typical case Felipe Contreras
2021-05-29  7:44 ` [PATCH 10/15] push: remove redundant check Felipe Contreras
2021-05-29  7:44 ` [PATCH 11/15] push: fix Yoda condition Felipe Contreras
2021-05-31  6:44   ` Junio C Hamano
2021-05-29  7:44 ` [PATCH 12/15] push: remove trivial function Felipe Contreras
2021-05-29  7:44 ` [PATCH 13/15] push: only get triangular when needed Felipe Contreras
2021-05-31  6:48   ` Junio C Hamano
2021-05-29  7:44 ` [PATCH 14/15] push: don't get a full remote object Felipe Contreras
2021-05-29  7:44 ` [PATCH 15/15] push: rename !triangular to same_remote Felipe Contreras
2021-05-31  7:54   ` Junio C Hamano
2021-05-29 20:37 ` [PATCH v2 0/6] Unconvolutize push.default=simple Philip Oakley
2021-05-30 16:27   ` Felipe Contreras
2021-05-30 11:31 ` Ævar Arnfjörð Bjarmason
2021-05-30 16:22   ` Felipe Contreras

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=a385c279-5902-40af-f54d-85b950bbb497@iee.email \
    --to=philipoakley@iee.email \
    --cc=avarab@gmail.com \
    --cc=felipe.contreras@gmail.com \
    --cc=git@matthieu-moy.fr \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=l.s.r@web.de \
    --cc=mathiaskunter@gmail.com \
    --cc=newren@gmail.com \
    --cc=peff@peff.net \
    --cc=r@artagnon.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.
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).