[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: GitHub “pull request” is proprietary, incompatible with Git ‘request-pull’



Ian Jackson <ijackson@chiark.greenend.org.uk> writes:

> Dimitri John Ledkov writes:
> > What you have described here is github pull requests =) […]
>
> Except that (a) we don't have an implementation of the server side (b)
> a person who wants to submit a github pull request needs to push
> buttons on the web UI too.

As pointed out elsewhere in the thread, the web UI is not the only
interface. The submit step can be done through the web API
<URL:https://developer.github.com/v3/>.

The problems you point out remain though:

* We don't have an implementation of the server side (i.e. the
  implementation is proprietary).

* GitHub's web API, like its web UI, will reject any submitter who does
  not authenticate using a GitHub account (i.e. the implementation is
  centralised).

If Alice's repository is hosted on GitHub, and Bob's repository is
hosted on BullCodes, a decentralised pull request workflow would
necessitate full support for Bob to submit pull requests to Alice
without Bob needing to register with any service other than his
BullCodes account.

My reading of <URL:https://developer.github.com/v3/#authentication>
leads me to infer there's no way for to submit a GitHub “pull request”
without having a GitHub account.

Decentralisation would require that anyone with a Git repository can
submit a GitHub “pull request” without any need for a GitHub account.
I'd love to learn if that's possible now.

> > A distributed code review would be better, where one pushes and/or
> > uploads git bundle. […]
>
> By `distributed' you might mean either:

I won't presume to answer for Dmitri. My usage of “distributed” features
for Git is intended to imply that every Git repository can participate
fully in that feature as a first-class peer with any other, without
registration to any specific central point.

My understanding is that participation in GitHub “pull request” workflow
is restricted to only those who have a GitHub account. To the extent
that's true, that feature is not distributed and should not be
considered part of a distributed VCS.

-- 
 \            “[T]he great menace to progress is not ignorance but the |
  `\           illusion of knowledge.” —Daniel J. Boorstin, historian, |
_o__)                                                        1914–2004 |
Ben Finney


Reply to: