unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: rms@gnu.org, Eli Zaretskii <eliz@gnu.org>
Cc: cpitclaudel@gmail.com, monnier@iro.umontreal.ca, emacs-devel@gnu.org
Subject: Re: pull requests
Date: Fri, 17 Apr 2020 06:54:50 +0300	[thread overview]
Message-ID: <231ee736-e669-540b-123f-70aa98d3f9bb@yandex.ru> (raw)
In-Reply-To: <E1jJpl3-0003SY-AK@fencepost.gnu.org>

Hi Richard,

Sorry for the late reply. I'll try to make a good description.

On 02.04.2020 05:39, Richard Stallman wrote:
> [[[ To any NSA and FBI agents reading my email: please consider    ]]]
> [[[ whether defending the US Constitution against all enemies,     ]]]
> [[[ foreign or domestic, requires you to follow Snowden's example. ]]]
> 
> I have never seen what a pull request is like to use.  I do not use
> the systems which support them.  In trying to think about their
> implications, I have to go by the descriptions people have sent me
> in this discussion.
> 
> Unfortunately, the descriptions I've reaceived seen to conflict.
> Perhaps people were describing different ways that different projects
> or different platforms handle pull requests, but I did not know that
> when I read them.

AFAIK, there are basically two different things that are called a "pull 
request".

The first is basically an email with details about the repository and 
the branch you want code "pulled" from. There are more details here: 
https://www.kernel.org/doc/html/latest/maintainer/pull-requests.html, 
but this is largely irrelevant to this discussion because a) we can do 
this already (and don't need any help with that), b) our developers and 
contributors don't use this approach. So it's not what we've been 
discussing.

The second one (which is what we're considering) has been popularized by 
the proprietary code forge called GitHub. In there, users can make 
'forks' of the original repository, where a fork is basically a copy of 
the original repository that belongs to the user's account (and its URL 
has the user's username in it). The said user can create a new branch, 
push some changesets into it, and then propose the said branch to the 
original repository and its developers for merging. By creating a "pull 
request".

It's a "thing": Github, as well as similar forges such as Gitlab, have a 
dedicated type of issue (*) that's called a "pull request". It has all 
the features of an "issue" (which generally means people can leave 
comments in it), as well as extra features: it shows the author, the 
source branch, a multi-line description that the author usually has to 
fill, the proposed commits, it can show the combined diff of those 
commits, users can leave comments associated with individual lines of 
that diff (and the UI displays that neatly), they can lead threaded 
discussions on said commits (which get semi-hidden as soon as the 
related code has changed), and the PR tracks the source branch closely, 
so as soon as the user pushes some new changes to the branch, the 
information in the PR updates automatically. The PR web page can show 
the status of the CI build for the proposed branch. The main 
repository's maintainers can merge the PR with just a couple of clicks 
with the mouse (this works best with small contributions). There are 
other features.

Overall, a lot of developers are used to this workflow and would never 
choose patch submission over email. Of course, not everybody. Some 
people just don't like web interfaces, for example.

(*) Issues are basically bug reports, but people can use them for 
discussions, support questions, and so on.



  reply	other threads:[~2020-04-17  3:54 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-22 22:35 ELPA: where is chess developed? Jack Hill
2020-03-23  4:26 ` John Wiegley
2020-03-23 13:50   ` dick.r.chiang
2020-03-23 14:27     ` Mario Lang
2020-03-23 15:12       ` dick.r.chiang
2020-03-24  8:10         ` Philippe Vaucher
2020-03-24 11:38           ` dick.r.chiang
2020-03-24 11:54             ` Philippe Vaucher
2020-03-24 14:12               ` Stefan Monnier
2020-03-24 14:41                 ` Stefan Monnier
2020-03-27  2:59               ` pull requests Richard Stallman
2020-03-27  3:49                 ` Stefan Monnier
2020-03-28  2:45                   ` Richard Stallman
2020-03-28  3:03                     ` Stefan Monnier
2020-03-27  7:54                 ` Eli Zaretskii
2020-03-27 13:00                   ` Clément Pit-Claudel
2020-03-27 13:30                     ` Eli Zaretskii
2020-03-27 14:37                       ` Clément Pit-Claudel
2020-03-27 15:21                         ` Eli Zaretskii
2020-03-27 15:41                           ` Dmitry Gutov
2020-03-27 19:16                             ` Eli Zaretskii
2020-03-27 19:24                               ` Dmitry Gutov
2020-03-27 19:34                               ` 조성빈
2020-03-27 19:28                             ` Eli Zaretskii
2020-03-27 20:39                               ` Dmitry Gutov
2020-03-28  2:46                             ` Richard Stallman
2020-03-28 17:14                               ` Dmitry Gutov
2020-03-30  3:38                                 ` Richard Stallman
2020-03-30  4:09                                   ` Stefan Monnier
2020-03-30  5:58                                     ` Eli Zaretskii
2020-03-30 12:03                                       ` Dmitry Gutov
2020-03-30 12:55                                         ` Yuri Khan
2020-03-30 13:12                                         ` Eli Zaretskii
2020-03-30 13:50                                           ` Dmitry Gutov
2020-03-30 14:12                                             ` Eli Zaretskii
2020-03-30 14:34                                               ` Dmitry Gutov
2020-03-30 15:36                                                 ` Eli Zaretskii
2020-03-30 15:50                                                   ` Dmitry Gutov
2020-03-30 16:09                                                     ` Eli Zaretskii
2020-03-30 17:06                                                       ` Dmitry Gutov
2020-03-30 17:13                                                         ` Eli Zaretskii
2020-04-02  2:39                                                       ` Richard Stallman
2020-04-17  3:54                                                         ` Dmitry Gutov [this message]
2020-03-30 13:43                                       ` Stefan Monnier
2020-03-30 16:59                                         ` Dmitry Gutov
2020-03-30 17:20                                           ` Stefan Monnier
2020-03-30 17:28                                             ` Dmitry Gutov
2020-03-30  8:25                                   ` 조성빈
2020-03-30 11:51                                     ` Dmitry Gutov
2020-03-30 13:04                                     ` Eli Zaretskii
2020-03-30 17:49                                   ` Dmitry Gutov
2020-03-27 16:39                           ` Clément Pit-Claudel
2020-03-27 19:21                             ` Eli Zaretskii
2020-03-27 14:05                     ` Stefan Monnier
2020-03-28  2:46                   ` Richard Stallman
2020-03-23 15:58     ` ELPA: where is chess developed? Stefan Monnier
2020-03-23 14:25   ` Mario Lang
  -- strict thread matches above, loose matches on Subject: below --
2020-04-17  4:24 pull requests Zach Pearson
2020-04-17  8:11 ` Alex Ott
2020-04-17 16:36   ` Dmitry Gutov
2020-04-21  1:47   ` Richard Stallman
2020-04-21  2:12     ` Po Lu
2020-04-22  3:19       ` Richard Stallman
2020-04-23  3:15         ` Po Lu
2020-04-17 16:38 ` Dmitry Gutov

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: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=231ee736-e669-540b-123f-70aa98d3f9bb@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=cpitclaudel@gmail.com \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rms@gnu.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://git.savannah.gnu.org/cgit/emacs.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).