logoalt Hacker News

bee_ridertoday at 4:08 AM9 repliesview on HN

I like git, it works perfectly fine on my command line.

I do wonder, though, if it would have been designed differently if the whole “code forge” sort of application (or whatever GitHub and the like are called) was envisioned at the time. Pull requests aren’t even a concept in git proper, right?

It seems like a kind of important type of tool. Even though git is awesome, we don’t need a monoculture.


Replies

tadfishertoday at 4:25 AM

    git request-pull
Docs: https://git-scm.com/docs/git-request-pull

Generates a pretty email requesting someone to pull commits from your online repository. It's really meant for Linus to pull a whole bunch of already-reviewed changes from a maintainer's integration branch.

The rough equivalent to GitHub's "pull request" is the "patch series", produced by:

    git format-patch
Docs: https://git-scm.com/docs/git-format-patch

Which lets you provide a "cover letter" (PR description), and formats each commit as a diff that can be quoted inline in an email reply for code review.

imrontoday at 4:28 AM

> I do wonder, though, if it would have been designed differently if the whole “code forge” sort of application (or whatever GitHub and the like are called) was envisioned at the time.

I would argue that it was purposefully designed in contrast against that model.

GitHub is full of git anti patterns.

red_admiraltoday at 9:15 AM

Indeed they're not; they live on the 'user layer' rather than the 'application layer'. That's not to say many git-frontends (IntelliJ, Sourcetree, Github desktop) don't support them, but "git pullrequest" isn't a thing.

Edit: see "git request-pull" as mentioned below (file:///C:/Program%20Files/Git/mingw64/share/doc/git-doc/git-request-pull.html) but what it does is write "a pretty email" (the other poster's words) to STDOUT.

grogenauttoday at 4:26 AM

Sorceforge predates git by about 11 years. As do several other projects like google code. Its not a new idea. Or basically most source control systems. Git, actually, is the more unique idea, of a DVCS... versus a cVCS...

show 1 reply
thwartedtoday at 4:28 AM

> or whatever GitHub and the like are called

GitHub is a social networking site that just so happens to have code hosting related features.

show 1 reply
mzitoday at 4:20 AM

À pull request is just you requesting someone to pull from you in git proper.

So the maintainer adds you as a remote and pulls from you.

show 1 reply
ngc248today at 9:52 AM

"Pull requests" are part of git though since it was originally a DCVS it meant you would pull from an individuals git repo ... services like github etc centralized the concept

throwaway173738today at 4:21 AM

They sure aren’t. Before github you set up remotes or emailed patches.

jonhohletoday at 4:40 AM

Perforce had change sets and there were lots of tools for code reviews that worked a lot like GitHub before GitHub (review board, phabricator, another one I can’t remember).