I always prefer version control while doing coding. I can’t think of writing code without version controlling. But when I moved to Salesforce, the first thing that I was looking for is the version controlling to have better source code control.
I worked with many version controlling tools like CVS, SVN etc. But I personally feel Git is the best version controlling option we are having now. I am a big fan of Git. Git is much more powerful than any other version controlling tool. Here in this post, I am not going to describe the advantages of Git. But if you want, you can refer below URLs to understand how powerful Git can be:
Here in this post, I will explain how we can use Git + Eclipse for Version Controlling in Salesforce.
Step 1: Once we download and install Force.com IDE, we need to install the Git plugin. The name of the plugin is: EGIT. We can download the same from http://www.eclipse.org/egit/
Step 2: Get the salesforce code into your local worspace.
Step 3: In this step, we will configure the “Local Repository”. What we need to do is: Right Click on Project | Team | Share Project.
Step 4: We need to choose Git as an option and click on “Next”

Step 5: Here we need to click on “Create”. Select “Parent Directory” and “Name” as below and click on “Finish”. This is the step where we will mention the local repository name and the path.

Step 6: Once we click on the “Finish” button, we will see that all files in Eclipse are marked with “?” mark like below. Question marks means Git does not know what to do with files, either you can schedule them for commit or add few of them in ignore list.

Step 7: Here in this step, we will commit our changes to our newly created “Local Repository”. In order to do that, click on Project | Team | Commit. It is always good practice to provide meaningful comments against each commit so that if required, developers can easily recognise the changes.

Once we are done with the commit, we will notice that “?” mark will vanish. It means that the changes are committed to the local repository.
Step 8: Till now we have committed our changes to our local repository. But now it’s the final and most important part where we will move our code from local repository to actual remote server. For that we need to create a remote repository in Git. Please search in Google for “How to create remote repository in Git?”. Once we are done, we need to configure the same in eclipse. For that click on Remote | Create Remote.
Step 9: A new pop-up window will come up. First select the option “Push” and give name of remote repository. “Push” means we are going to save changes on remote repository and “Fetch” means we are going to fetch code from remote repository.

Step 10:  Clicking on the “Ok” button, a new pop-up window will open. Here click on the Change button. In the new pop-up window, we have to provide Git URL, username and password like below and click on finish.

Step 11: Now here click on “Advanced” button. In the new pop-up window, select the options as per the below screenshot and click on finish.

Step 12: Finally click on “Save”. Now our remote repository is also configured. Let’s check whether it is working now.
Step 13: Here in this step, we will push the code from our “Local Repository” to “Remote Repository”. Do as displayed below:

Step 14: Once the push is done, we will see all our code is moved from “Local Repository” to “Remote Repository”. Here is the code in Github. 

In the same way we can configure “fetch” to get the code from remote repository.
I hope this article will help many developers. Please feel free to provide your feedback.