Usage help

Simply executing splash.py without parameters or with the parameter
'help' should at least give you usage.

[ FIXTHIS - put usage here. ]

Splash commands

[ FIXTHIS - put list of commands here ]

abort - abort the current operation

checkout - checkout the specified splash

continue - continue the current operation

begin - (re)start specified splash

fetch - fetch tree up until specified splash

start - ??

status - display all splashes

log - shwo current log-graph up to base

merge - merge another splash onto this one (or this one onto another?)

unmerge - remove another splash from this one (or this one from another?)

rebuild - rebuild tree

sync - rebuild tree and push all dependent splashes to remote

help. -h or --help - print usage and exit

-l or --list - list splashes and exit

-b or --base - specify base splash

-v or --verbose - be verbose

Splash setup

Splash includes the splash.py program and a configuration file called 'Splashfile'.

The configuration file contains descriptions of the 'splashes' in a particular repository.
To use splash, symlink the Splashfile to the working kernel directory.
Put the splash.py program on your path (usually somewhere like ~/bin.

In order to use splash, you have to first fetch the splashes.

$ splash.py fetch <splash_name>

Recovering from errors

Splash has its own batch parser, similar to the one in a git
interactive rebase. Previous to splash, the developers used to use
'git interactive rebase', but it is slow, and you can't batch rebases this way.

If a command fails in any way (other than argument parsing), you can recover by
executing:

$ splash.py abort

or, to try the operation again, do:

$ splash.py continue

In general, Sony keeps topic branches in git under .git/refs/topics/<developer_name>/foo
According to many tools these aren't valid refs because they aren't under refs/heads/
or refs/tags/.

Retrieving a topic branch and making a local branch

You can download and have all the splashes as local refs in one of
the following ways:

but keep in mind that these branches will need to be updated every time
you change anything in splash. You can also make the ref a symlink
instead to fix this, but I'll leave that as an exercise for the reader.