On a daily basis probably each and every software developer spends a lot of time collaborating and communicating with other developers. There are several tools that simplify this communication (or at least should). One of those tools is a Version Control System. Not so long ago, a new tool appeared on the horizon, called Git. It quickly became a very popular tool in the open source community. Though the ideas behind Git are very basic, becoming a master is not easy! It takes some time, especially for someone who has had the "pleasure" of working with other systems like SVN or CVS previously. If you are starting with Git or switching from another tool, then this post is an aggregation of ideas, not a full-featured tutorial. If you are already an experienced user, perhaps you will consider sharing your knowledge in the comments.
Learn from the Best Sources
There are several places where you can read and learn about Git, but it is hard to know which resource is best. In my opinion the best source of Git knowledge is a free book called "Pro Git" (http://git-scm.com/book). The second is an online tutorial called Git Immersion. If you feel you missed something or want detail on something specific, then there is always the official documentation. (more...)