I am currently reading the Git Pro book hosted on git-scm.com. It is freely availble as ebook in many formats.
Having read about 1/3 so far I can really recommend it. It is well written and even after using git for years there is plenty of stuff to learn from it. Might it be internals that will become clearer or different aproaches on how to use it.
I think you meant “Pro Git”. :) (I agree, it’s worth reading.)
Yeah I botched that one up, thanks for the correction. :)
The “Git Internals” chapter is pretty eye opening. While not strictly necessary for using git I found understanding how the underlying content addressable store fits into how a repo is put together helps to pull away nearly all the magic.
I like the way of thinking these moments reveal.
Though, I prefer to rebase to bring changes from master into my feature branch.
You can merge in both directions.
A rebase can force you to resolve many conflicts, each of which has a chance of introducing a bug. A merge can result in fewer conflict resolution and be preferable for that reason.
True in general, but depends on your commit workflow; I generate a clean history locally before I rebase so there’s rarely multiple conflicts for the same thing. Git rerere helps too.
I would agree, but it’s less likely to happen when I rebase often.
You can merge in both directions
You can do this in svn too. Nevertheless it’s a good thing to know for git users.
Great post, this is extraordinarily helpful as someone who teaches people git often.