Git and Github

Overview
We use Git as our version control system and Github as our central repository. For this reason, if you plan on contributing to OpenROV, it's critical that you understand at least the basics of how Git and Github work.

The following sections give some references and tips for getting started with Git and Github. With this knowledge, not only will you better understand how we manage our open-source projects, but you'll also have the opportunity to start integrating this powerful version control system into your own workflow.

Learning Git and Github
Git can be a little daunting if you've never used it before, but most people soon learn to love it. The following resources will help you to get started:


 * Git Official Website
 * Try Git (interactive tutorial)
 * Michael Marner's Git Tutorial (video)
 * Github Introduction to Git (video)
 * Linus Torvalds' Git Tech Talk (video)
 * The Pro Git Book
 * the git help command and the Git online manual
 * Github Git Reference (manual)
 * the Freenode IRC server's #git channel
 * and many others

Git Prerequisites
Before you start, you will need to work through these points:


 * configure SSH, required for pushing branches to Github. See "Generating SSH Keys" for Linux, Mac OSX and Windows.

Some Quick Git Tips

 * use gitk to give a visual representation of your repository
 * by default, if a file's permissions change, Git will perceive it just the same as if its contents were changed, Thus, to ignore permissions changes, run: