Mark Eschbach

Software Developer && System Analyst


Git is a distributed revision control system utilizing treeish object to describe changes to a logical file system over time.

Converting a Subversion repository

Initial import

This will import most if not all of the history from Subversion. The following command will import the repository from Subversion into Git:

  1. git svn clone ${SUBVERSION_REPOSITORY_URL}
The URL to use as the base of the Subversion repoistory.

Resuming import

It is a real bummer when your long import gets interrupted. You don't need to restart however, the following command will allow you to continue from the point of failure.

git svn fetch
A great reference going into detail regarding Git Subversion
git-svn(1) Manual Page
Manual page for the Git SVN bridge.


Scripting method to get current revision
git rev-parse --short HEAD
Reviewing commit logs
git log --decorate --all --oneline --graph
Permentantly adding
To add this permenantly use: git config --global alias.slog "log --decorate --all --oneline --graph" This adds a new git subcommand called slog, instead of having to remember all the options.
Is this commit an ancestor of another commit-ish?
git merge-base --is-ancestor $ACESTOR_COMMIT $YOUNGER_COMMIT
Configuring Git sign all of your commits
  • gpg --list-keys # list your keys
  • git config commit.gpgSign true
  • git config user.signingKey {Your key} # replace last param with your key from line #1