Skip to content
open tomato/ rafa
GitHub
rafa pages
  1. rafa
  2. rafa switch

rafa switch

Move this checkout to a board or an epic by number, or back to where it was with a dash, like cd and git checkout.

rafa switch moves this checkout's place on the board, kept in .rafa/position.json, the way cd - and git checkout - move between two places. Epics and boards explains positions and home.

Spends: nothing. Changes: .rafa/position.json only; it does not switch git branches.

NOTE

In the target layout this code lives in the private package rafa-run, bundled into @open-tomato/rafa (Repository layout). In 0.47.0 it is already a package, @open-tomato/rafa-run in packages/rafa-run, but only as a facade: it re-exports this code from the root package's src/, where the files still live until their move. You install and type the same either way. [verify: the release the move lands in]

Reference: rafa switch

Move this checkout to a board or an epic by number, or back to where it was with -.

rafa switch <target> [--no-rehome]

Moves this checkout's position, kept in .rafa/position.json, to the issue numbered: a type:roadmap board, at its first now epic that is not done, or a type:epic epic, on the board whose checklist lists it (the current board first, then the default board, then the lowest-numbered board; the default board when none lists it). - goes back to the previous place, as cd - does. A switch re-homes: the new place becomes home as well as current. --no-rehome keeps home, for a workflow moving for a single task. A number that is no open board or epic, a closed one, and - with no previous place are refused with exit code 2. Prints the new place on one line: the board, the epic with its title and horizon, and its done/total. With --output=json the new current, previous and home places are the data of the terminal result event.

ArgumentTypeWhat it is
targetstring, requiredThe board's or the epic's issue number, or - for the previous place.
FlagType and defaultWhat it does
--rehomeboolean, default trueMake the new place home too; --no-rehome keeps home where it is.

Examples:

  • rafa switch 252: Moves to epic #252 and the board listing it, and makes that place home.
  • rafa switch -: Goes back to the place this checkout was at before its last switch.
  • rafa switch 31 --no-rehome: Moves to board #31 at its first now epic that is not done, leaving home where it was.

Output formats: text, json.