Fervent Coder

Coding Towards Utopia...by Rob Reynolds
posts - 278 , comments - 431 , trackbacks - 0

My Links


Rob Reynolds

Subscribe to Fervent Coder RSS
Subscribe to Fervent Coder by Email

About Me

I manage several open source projects. Need...
   ...package management for Windows?
   ...automated builds?
   ...database change management (migrations)?
   ...your application to check email?
   ...a monitoring utility?

I also write for

Like what you are reading? Want to buy me a cup of coffee?
PayPal - The safer, easier way to pay online!

Article Categories


Post Categories


Git - Distributed Version Control - New User Resources

JP recently talked me into it, so I finally took the plunge and decided to try Git using http://github.com.  If you are new like me, there are some guides out there to help you get up to speed on Git pretty fast.

A few starter notes, and I will release you to the resources available. 

Git is distributed source control, so each local copy has all of the history. That means you have all of the history of a project on your local machine. When using Git, there is the idea of staging, committing, and pushing.  Staging is all of the changes that are occurring locally (this is kind of the same as SVN adding, changing and deleting files locally).  When you commit, you make the changes back to your local repository (instead of the central repository like with SVN and most source control). Pushing is when you push all of the commits you've done locally out to others or to GitHub (insert other Git Host here).

If you are going to develop with a team, each person needs to know about each other's repositories so they can grab changes from it. You can also still use a central hub which everyone pushes to and pulls the changes from. This is usually accomplished through Git source control hosting, like GitHub (the most popular at the time of this writing).  Using the central hub is easier because you have only one repository to push changes to and pull changes from.

GitHub is not Internet Explorer friendly at the time of this article, so use Firefox instead.  To use GitHub you need an SSH key, which the articles below will help you generate. I generated three before I got the right one (because of differing instructions). I did best using msysGit to generate the key.

GitHub is also great for committing changes/patches to OSS Projects. When using GitHub, forking is a good thing (it's how you submit patches to projects). When you submit patches, you are issuing a "pull request" back to another repository. This is the repository you forked from.

I suggest these articles in no particular order:

These are the tools you are going to want to get to use Git and GitHub:

Git 'er done! ;-)

Print | posted on Sunday, March 15, 2009 3:14 PM | Filed Under [ Code ]



# re: Git - Distributed Version Control - New User Resources

This is good information...
This is good for proxies: http://rip747.wordpress.com/2008/09/12/git-clone-over-http-who-knew/
3/16/2009 3:37 PM | Robz

# re: Git - Distributed Version Control - New User Resources

Proxy? Have a look here as well: http://stackoverflow.com/questions/496277/git-error-fatal-unable-to-connect-a-socket-invalid-argument
3/16/2009 3:51 PM | Robz
Comments have been closed on this topic.

Powered by: