Live data from Hacker News

Git koans

stevelosh.com

141–143 of 143 posts

Re: Git koans

#141
post #83

I'm a relatively new git user. I'm rebasing a log when other developers commit unrelated changes. What is the problem with git rebase?

I believe lots of people do not understand that you should treat remote branches differently than local branches. More precisely, you treat remote/global history differently than local history.

Using rebase to clean you local history is ok. Maybe even recommended or mandatory depending on the project. Changing history, which is already in other people's repos, will lead confusion and should really be avoided.

Re: Git koans

#142

Earlier quoted context omitted.

Git is predicated on the notion that it's actually quite simple and elegant how Git works, and programmers are clever enough to understand how their software works, so not much porcelain is necessary. There's a refreshing honesty to that.

That's not my understanding of it's history; it was originally planned to have, potentially, multiple porcelains, but that idea died of a couple years back.

I believe that is the root problem of git. Originally, the assumption was: porcelains will provide a nice UI, so core git can leak implementation details. However, it turns out the implementation details are so simple and intuitive for many developers that core git is now the dominant UI.

For example, the multiple use cases of 'checkout' or 'reset' are quite intuitive, if you have the implementation in mind.

Re: Git koans

#143
post #139
post #105

Earlier quoted context omitted.

I have no idea how git works. Where do they tell you? I'm curious to learn.

Git for computer scientists: http://eagain.net/articles/git-for-computer-scientists/ Quick introduction to git internals for people who are not scared by words like Directed Acyclic Graph.

Thanks, that's perfect. I don't as much care about the nitty gritty at the moment as a conceptual overview of the architecture of git.
Post reply on HN