Live data from Hacker News

Git from the Bottom Up (2009) [pdf]

ftp.newartisans.com

11–20 of 26 posts

Re: Git from the Bottom Up (2009) [pdf]

#11
post #3

This is the right way to learn Git. I don't know how good this is, but I feel most of the strange unintuitiveness of git went away and was replaced by a feeling of productivity since I understood what happens under git's hood.

Agreed. Rather than memorizing a set of commands, if you know the layout of a git repository, you start thinking about the state you want to put the repository in and how to reach that state using git commands.

Re: Git from the Bottom Up (2009) [pdf]

#13
post #7

Earlier quoted context omitted.

The big take away for me was the idea of blobs and trees as Hickeyian values and commits as Von Neumann places. [1] If there is one weakness is the article it is ending with stash , which to me seems to be a bit of a feature in search of a workflow more than something that enhances distribution and sharing among a team in so far as the class of problem it addresses seems to result from larger issues of team structure…

I find stash useful primarily as a place to hold things for a few minutes, and no longer. In particular, I frequently use "git stash", followed by "git pull --rebase", and if all went well, "git stash pop". I could just as easily do "git commit -a -m 'WIP'", "git pull --rebase", and "git reset HEAD^", but I find stash more intuitive.

That sort of gets at my point, stash makes sense in a corner of a high disciplined workflow. But the article presents it as approaching "best practice" and as a belt to sport with one's lederhosen. By analogy it's a bit like multiple inheritance in C++, on occasion and for some people it might be just the thing, but it's probably not a good starting assumption at the design phase.

Though again, it's a minor criticism and mostly related to the impression of importance positioning it at the end of the article suggests [i.e. placing the strongest point in paragraph four of the five paragraph essay].

Re: Git from the Bottom Up (2009) [pdf]

#15
post #3

This is the right way to learn Git. I don't know how good this is, but I feel most of the strange unintuitiveness of git went away and was replaced by a feeling of productivity since I understood what happens under git's hood.

Same here, it's the non-encapsulation of persistent structures. Learning top-bottom feels like an impatient solution that will backfire.

Re: Git from the Bottom Up (2009) [pdf]

#17
post #5

Web version: http://jwiegley.github.io/git-from-the-bottom-up/ A nice resource in the same vein -- build a bare bones git in javascript: http://kushagragour.in/blog/2014/01/build-git-learn-git/ And finally, Linus's one page explanation of git's central concepts for the initial commit of git: https://github.com/git/git/tree/e83c5163316f89bfbde7d9ab23ca...

Thanks, those are great references that I'd totally forgotten about.

Re: Git from the Bottom Up (2009) [pdf]

#18
Talking about merges in Git always reminds me of this Linus post:

http://marc.info/?l=linux-kernel&m=139033182525831

there's clearly a balance between "octopus merges are fine" and "Christ, that's not an octopus, that's a Cthulhu merge".

(Also, GitHub's logo is reminiscent of the "octopus merge".)

Post reply on HN