Here are a few Thor tasks to make developing with Git easier (and some corresponding Git aliases to
make invoking them easier). Install them with:
$ thor install git.thor
Or, if you don’t want to actually download this stuff, just use:
$ thor install "http://github.com/cypher/thor-git/tree/master/git.thor?raw=true"
You can add the git aliases by copying them into the corresponding section of your global
The tasks are designed around a particular workflow in which you primarily develop against a single upstream that you
git-svn dcommit to. In this workflow
master typically mirrors this upstream, and little or no work is done on
master. Instead you branch off master with
thor git:open and then commit as you go, using
thor git:push to send your changes upstream, and finally using
thor git:close to delete the branch when you’re done with it.
Let me say it again, because it’s very important: all these tasks assume that
master is the nexus of your local branches and the portal to your remote branch.
$ thor git:update
Updates your current git repository, autodetecting whether you have a regular ol’ git project or a
$ thor git:push
Commits any changes in your current branch not yet pushed upstream and ports ’em over to master.
$ thor git:open [mynewbranch]
Creates a new branch off master. Think of this as opening an issue, or a new path of development.
$ thor git:close [mynewbranch]
This is open’s brother, and should be used when you finish something and have already moved it to
master or upstream. If you haven’t yet, don’t worry – this won’t eat your data.
Brian Donovan (aka eventualbuddha) created the original sake-git task set, which can be found on GitHub.