Git
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:
-
git svn clone ${SUBVERSION_REPOSITORY_URL}
- 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
Xref
- git-svn
- A great reference going into detail regarding Git Subversion
- git-svn(1) Manual Page
- Manual page for the Git SVN bridge.
Notes
- 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