If you're intimidated by the command line,
I recommend SourceTree:
But I promise, using git
on the command line is
Creating a new repository
is as easy as typing:
$ git init
This adds the basic structures Git needs
in order to function properly
Cloning an existing repository
is just as easy:
$ git clone <repo url>
This pulls down the entire git history for
a given project and lets you manipulate
it as if you had created it.
Adding ﬁles to your repository:
$ git add *
This will add ALL ﬁles in the current
directory to your repository.
Committing a set of changes:
$ git commit -m "My commit message"
This will save all staged changes to a
reference point you can always restore.
Checking a repository's status
$ git status
This reports which ﬁles have been
modiﬁed, added, removed, etc.
Un-staging some edited ﬁles:
$ git reset
This returns all staged ﬁles back to
being unstaged. It does NOT undo any
edits to those ﬁles by default.
Temporarily store staged edits:
$ git stash
Think of this as a way of saying, "I'm not
ready to do anything with these edits,
but I don't want to erase them."
Start a new "branch" for tracking edits:
$ git branch mybranch
We'll use this separate branch to
develop a new feature, safely isolated
from the main codebase and bug ﬁxes.
$ git checkout -b mybranch
Merge a branch back into master:
$ git checkout master
$ git merge mybranch
First we switch back to the master
branch, then we merge in all changes
Pushing Edits to a remote server:
$ git push
Yep, that's really all there is to it!