Hacker News new | past | comments | ask | show | jobs | submit login

As a true open-source zero timer, I can't quite figure out what PR means. My gut was "pull request" but it sounds like you're "committing a fix" at this point, so I suppose "push request" might be the answer, but it's an ambiguous pair of letters.



That's tied up with how git works, which is a huge mess.

You really do "commit a fix" but you commit it to your own git repository, then you make a "pull request" to the owner of the main repository, asking them to pull in your fix.


It has nothing to do with Git, it's just the name Github uses.

GitLab calles it a "Merge request", which is more fitting IMO.


That's actually not true. git-pull (which is where the pull request comes from) is in the git manpages. Specifically it is: Fetch from and integrate with another repository or a local branch. Which is basically a git fetch and merge from the submitters repository to the repository they are submitting to.

EDIT: Admittedly if you are talking specifically of the request part, then you are correct. However the name comes directly from git's pull command which is a feature of git.


But it makes sense in git, since it's written from the perspective of the user pulling the commits, not from the user sending them.


Pull-request makes sense in Github, because the typical work-flow for open-source on Github is to fork the repo you want to contribute to. Hence, the maintainer has to pull the code from you.

Merge-request makes more sense in Gitlab because they're main use-case is as a self-hosted internal tool where developers most-likely are pushing all of their feature branches to a central repository and asking for the branch to be merged into the mainline branch.


It's pull request, that's git terminoly to merge external code to an existing project.


I don't want to nitpick but for a Git beginner (not necessarily you but others reading here), it's important to know that "pull request" is really a Github concept, not a Git one.


Pull request is very much git terminology. Here's the documentation for 'git request-pull': https://git-scm.com/docs/git-request-pull


If you're being picky, then I can be picky too: the concept of a "pull request" isn't defined in that manpage, only the command "request-pull" is. A "pull request" is an entity in itself.

The command may exist within git, but it's not a part of most people's git workflows. "Pull Request" is a term that's far more commonly attributed-to and associated with tools like GitHub, Gitlab, Bitbucket etc.

Did you know that git has the ability to send patches via email, built in [1]? Git has a lot of functions that the majority of people don't use.

[1] https://git-scm.com/docs/git-send-email


The claim was that a pull request is not a git concept, I think that's demonstratively false. I won't deny that GitHub popularized it, but they have by no means invented it.

As another piece of evidence, see this page https://www.kernel.org/doc/Documentation/SubmittingPatches

It says Linus (and other kernel maintainer) will want a pull request from you if you want to contribute code, yet he thinks GitHubs version of pull request is, well, lacking (http://www.wired.com/2012/05/torvalds_github/)


You're being ridiculously obtuse here. A 'pull request' is simply the result of calling the git 'request-pull' command. That's just how english works, because the result of 'requesting' is a 'request', so the result of 'requesting a pull' is a 'pull request', in the same way that the result of 'ordering a pizza' is a 'pizza order', and if git had an 'order-pizza' command, it would result in 'pizza orders'.


It may not be a part of the actual git software package, but it's a feature of many Git workflows, not just GitHub.


I updated the post with a link :-) thanks for the feedback!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: