> On Nov 29, 2015, at 11:08 PM, Guido van Rossum <[email protected]> wrote:
> 
> On Sun, Nov 29, 2015 at 7:54 PM, Nick Coghlan <[email protected] 
> <mailto:[email protected]>> wrote:
> On 30 November 2015 at 03:12, Brett Cannon <[email protected] 
> <mailto:[email protected]>> wrote:
> > Thanks for the feedback. And the "do nothing" option is there, although it's
> > so disliked by so many people that the chances of us not changing our
> > workflow is pretty slim.
> 
> The interests of folks that prefer the terminal focused
> "commit-locally-and-push" workflow can still be taken into account in
> the evaluation though - while it appears likely either GitHub or
> GitLab will be adopted as the repository management service, whether
> or not the maintenance branches and the default branch are marked as
> protected so even core developers *have* to go through the web based
> merge process is a separate question.
> 
> What?! I've never worked with a GitHub-based project where you *had* to use 
> the web-based merge process. Hopefully that's not really on the table. In 
> fact I'm not a big fan of GitHub's web-based merge process at all -- I much 
> prefer seeing a simple linear history in the master (and I don't like 
> preserving  intermediate commits made during the PR review process).

I don’t believe Github even has an option where you *have* to use the web-based 
merge process. The closest thing they have is protected branches (disables 
force pushes, but not regular pushes) and required status checks (PRs have to 
pass certain pre merge tests before the merge button lights up).

Maybe the required status checks disables pushes all together but I don’t think 
it does and even if it did that feature (as currently implemented anyways) 
doesn’t make sense for us because it essentially requires all PRs to get 
rebased or have master merged into them before they can be merged via the merge 
button which is a massive pain for OSS teams of any size or velocity.

> 
> There are also tools like git-pulls (Ruby:
> https://github.com/schacon/git-pulls <https://github.com/schacon/git-pulls>) 
> and hub (Go:
> https://hub.github.com/ <https://hub.github.com/>) that let folks review and 
> merge GitHub PRs
> from the terminal. (I had a quick look through some of the command
> line clients listed at https://about.gitlab.com/applications/ 
> <https://about.gitlab.com/applications/>, but
> didn't see anything as workflow focused as git-pulls or hub, so "good
> support for terminal based usage" may count as a concrete technical
> differentiator here)
> 
> Review and merge process should be separable. After 10+ years of using 
> web-based review tools I personally wouldn't dream of using a terminal-based 
> *review* (as opposed to merge) process. Though of course if that's your 
> preference you should be able to do it.
> 

I don’t know about Gitlab, but GitHub exposes PRs as heads in the remote 
repository. You have to add a single line to your .git/config in that 
repository, but once you do they are available to use any regular git command 
against (check them out, diff them, whatever). Doing that won’t get the 
comments on the PR and the pre merge test status and such of course, but 
someone can merge a PR just by doing (if configured):

$ git merge upstream/pr/XXXX

Here’s my configuration for the pip repository on GitHub that is configured in 
this way: https://bpaste.net/show/77b17a2571f0 
<https://bpaste.net/show/77b17a2571f0> Line #14 is the important part. This 
also makes my local master and develop branch track the upstream repository, 
while my own branches get pushed to my fork which is the origin remote.


-----------------
Donald Stufft
PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________
core-workflow mailing list
[email protected]
https://mail.python.org/mailman/listinfo/core-workflow
This list is governed by the PSF Code of Conduct: 
https://www.python.org/psf/codeofconduct

Reply via email to