Gittyup is a set of drush commands to update a Drupal install's git repository. With the advent of drush site aliases and site groups, as well as it's remote capabilities, it became advantageous to use drush commands instead of shell scripts for keeping development and staging sites up to date.
Assumptions
It is assumed that the root directory of the git repository is the root of the Drupal install. If this is not the case, it is recommended to explicitly declare your repository's root in the site-alias for the site:
$aliases['foo']['git-root'] = '/bar/baz';
You may also specify it inline with the git-root option:
drush gittyup --git-root='/bar/baz'
Usage
Drush site aliases are pretty cool. Check out the example.aliases.drushrc.php and start using them! Within the site alias you can specify all the options to drush gittyup you would want, including specifying a git tag. Consider the following:
<?php
// My development site
$aliases['dev'] = array(
'uri' => 'dev',
'root' => '/var/www/dev',
'git-branch' => 'master',
);
// My staging site
$aliases['stage'] = array(
'uri' => 'staging.example.com',
'root' => '/var/www/stage',