Live data from Hacker News

Linus Torvalds won't do github pull requests

github.com

71–80 of 288 posts

Re: Linus Torvalds won't do github pull requests

#71

I don't mean to be overly critical, but is it just me or are the 'godfathers' of computer science starting to sound like cranky old men? I mean....ok....this pull request being inferior to the way HE (the creator of Git) imagined it (or implemented it) is a bit petty imho. What's with the complaining? I am sure this is not the first time I have heard him complaining about something on Github or some other 'new techno…

Crockford is heavily opinionated, and it's reflected in his work. JSLint is like a virtual Crockford, that yells at you for misplacing whitespace, semicolons, using functions with the word 'Sync' in them, bitwise operators, switch statements, and more.

If Linus wrote a lint for C, I really wonder what it would be like.

Re: Linus Torvalds won't do github pull requests

#72

Earlier quoted context omitted.

Git is a notoriously user-hostile piece of software interface-wise It's funny you say that, because Git is the only version control system where working with branches, forks and merges in big projects is not only doable, but in 90% of the cases painless. You can't really appreciate Git until you've tried doing the same tasks in Perforce, SVN and CVS. No other similar software has the same painless approach to branchi…

> Also, Git is freakishly fast and efficient. Much like C, an interface done with taste I don't agree with the second claim and the first one does not explain it being that way. What is so tasteful about this: # delete git remote rm ... git branch -D ... git tag -d ... git rm ... # rename git remote rename old new git branch -m old new # can't git tag ... git mv No - it may be useful, it may be fast, it may be effici…

First of all, all of these commands make perfect sense to me. I don't know why exactly, but I've never used a version control system that made more sense than this. I never really felt like I'm home with Perforce and SVN. Neither with Mercurial, although Mercurial is better than most.

    git remote rm
This deletes the reference to a remote repository. The difference between Git and SVN here is that in Git you can have multiple remote repositories with which you can communicate.

This comes in handy when pulling and pushing to/from multiple people. Imagine swapping code between you and your colleagues, doing experiments, doing code reviews, and so on. It also comes in handy when you're dealing with Heroku, or when you've got an "open-source" core that's pushed to GitHub and another branch with proprietary additions that you push somewhere else.

Also, all commands for managing these repository references start with "git remote" and to find out how to do something with them you just do "man git-remote".

    git branch -D
This deletes a local branch. It has nothing to do with the above. It does not use "rm" because that can be the name of a branch and this command is heavily overloaded.

    git tag -d
This deletes a tag. It is consistent with the above command, as "git branch -d" (lowercase D) is also supported, but uppercase D means that the deletion is forced, even if the branch was not merged. Again "rm" was not used, as that can be confused with the name of a tag.

    git rm
Deletes a file, but you don't have to use it. If you're confident about your editing skills, you can just commit all the deletions with "git commit -a ..." ... git will also be smart enough to detect a file rename, even though you did a deletion + addition.

"rm" is also the name of the command that does the same thing in Unix, being associated with the removal of files.

     git remote rename old new
As I said, "git remote" manages references to remote repositories. This just renames the reference named "old" to "new".

You could say that they should have used "mv", like in the case of "git mv", however this is not a "move" command. This is just plain renaming.

     git branch -m old new
This renames the local branch named "old" to "new". It is indeed inconsistent with the others, but that's because the "git branch" utility has been overloaded a lot. This command does confuse me from time to time.

     git mv
Like in the case of "git rm", this command does a "mv", while registering the action in Git. It is also not necessary if you're doing a "git add . && git commit -a".

"mv" does make sense here, as it is the name of the Unix command for moving files.

And a final tip for beginners: use the "man" pages. In a terminal input any of the following commands when you need help ...

    man git-remote
    man git-branch
    man git-tag
    man git-rm
    man git-mv
    man git-push
    man git-pull
    man git-reset
    man git-checkout
    etc...

Re: Linus Torvalds won't do github pull requests

#73
post #46

Earlier quoted context omitted.

It always puzzled me why his commits (and in fact standard commits) ought to start with a verb that is not in its past form. When I started using git four months ago (such a newbie), I would write something like "Fixed this" instead of "Fix this". Anybody with more insights on this? I am just curious.

It is part of the git best practices: http://git.kernel.org/?p=git/git.git;a=blob;f=Documentation/...

The HEAD version is a bit different (less clear?), although the intent is more or less the same:

"describe changes in imperative mood, e.g. "make xyzzy do frotz" instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy to do frotz", as if you are giving orders to the codebase to change its behaviour."

http://git.kernel.org/?p=git/git.git;a=blob;f=Documentation/...

Re: Linus Torvalds won't do github pull requests

#75

I don't mean to be overly critical, but is it just me or are the 'godfathers' of computer science starting to sound like cranky old men? I mean....ok....this pull request being inferior to the way HE (the creator of Git) imagined it (or implemented it) is a bit petty imho. What's with the complaining? I am sure this is not the first time I have heard him complaining about something on Github or some other 'new techno…

The fact that his comment is capped at 74/80 characters and signed only corroborate your feelings.

Re: Linus Torvalds won't do github pull requests

#76
post #46
post #35

It's instructive to read Linus's commits to his hobby project "subsurface": https://github.com/torvalds/subsurface/commits/master Even if I can't code like Linus, I can at least try to write commit messages like his…

It always puzzled me why his commits (and in fact standard commits) ought to start with a verb that is not in its past form. When I started using git four months ago (such a newbie), I would write something like "Fixed this" instead of "Fix this". Anybody with more insights on this? I am just curious.

I can think of a few reasons for the grammar rules in the commit message...

It is direct, concise, consistent and tends to active voice rather than passive voice. Further, not everyone writing or reading the messages will be a native English speaker. Avoiding past-tense forms just makes it easier.

Re: Linus Torvalds won't do github pull requests

#77
post #29

Earlier quoted context omitted.

You only love the style because he has enough on his side to back it up. Anyone else that acted like Linus does on a regular basis would be considered childish and arrogant. I'd take Github's version of any feature, any day, over the official git version, any time they differed - Git is a notoriously user-hostile piece of software interface-wise, and pretty much the only thing it has going for it on the usability fro…

I agree with the your first line. It espouses objectivity. But your second line goes in the opposite direction and make me sad.

Might be cerebral hemispheres taking turns. naarf.

Re: Linus Torvalds won't do github pull requests

#78

I don't mean to be overly critical, but is it just me or are the 'godfathers' of computer science starting to sound like cranky old men? I mean....ok....this pull request being inferior to the way HE (the creator of Git) imagined it (or implemented it) is a bit petty imho. What's with the complaining? I am sure this is not the first time I have heard him complaining about something on Github or some other 'new techno…

I totally agree. The past few links on HN to comments by Tovald have been full of inflammatory, juvenile language. I'm sure the guy is intelligent and certainly deserves a place in CS hall-of-fame, but I think the way he carries himself in these forums has tarnished his reputation.

Re: Linus Torvalds won't do github pull requests

#79
post #7

Can someone point me to the tool that comes with git for pull-request functionality?

git request-pull If you'd like to see an example, this will generate the text of a request sending the top few commits in your repository (assuming the origin / master convention) git request-pull master^^^^^ $(git config remote.origin.url)

A tip - you can use master~5 instead of master^^^^^.
Post reply on HN