Board edits with gitboard#
perch gb SUB -p NAME runs gitboard with the project’s GitLab project and
files filled in. The board is one YAML file you edit; gitboard turns the
difference into GitLab calls.
The cycle#
perch gb pull -p apollo # GitLab -> board/apollo.yaml, plus an untouched .base
# edit the file (by hand, with /board, /walk or /listen)
perch gb plan -p apollo # offline: the file against the .base, nothing sent
perch gb push -p apollo # write it to GitLab (asks first)
perch gb sync -p apollo # plan, y/n, push, snapshot, rotate the base
pull always writes the .base. sync plans again against live GitLab and
asks y/n; if the board file does not exist yet it pulls first. pull, push,
sync and members need GitLab; plan and status do not. gitboard reads
the URL and tokens from projects/NAME/.env (or perch/.env).
People#
perch gb members -p apollo adds the GitLab project’s members to the board
file’s people: (display name -> username), and every pull and sync keeps
that map, emails: and estimates: and adds new members. It never renames
or drops an entry, so changing a display name to match Budgie’s people.csv
sticks. perch maps every member whose name Budgie knows.
Titles#
Keep issue and milestone titles under 100 characters and put the detail in
the description: plan, push and sync flag longer ones. Over 255
characters (GitLab’s limit) the board file does not load at all.
Closing an issue#
Set closed: true on the issue. plan shows a closed row and push closes
it with a note (Closed from the board file by gitboard.). Removing an issue
from the file does nothing. After a push, pull leaves closed issues out of
the file.
Dropping a column#
Remove the column from columns:. plan shows a drop_column NAME (N cards)
row and push deletes the board list; cards keep their label. It needs the
.base, and Verify, Done and Failed cannot be dropped.