2 - branch in refs/topbloke-tips/<full-name>
3 contains the working version, fast-forwarding
4 - branch in refs/topbloke-bases/<full-name>
5 contains the base version, being the pulling
8 In-tree, there are metadata files in .topbloke
10 msg brach "commit message"
12 deps direct dependencies, one per line
14 included actual included branches, one per line
16 flags flags that apply to this branch, one per line
17 unknown flags starting with [a-z] are ok;
18 otherwise fatal. Currently defined flags:
19 Deleted branch is deleted
22 <full-name> has the format:
23 <email>@<domain.name>/<yyyy>-<mm>-<dd>T<hh><mm><ss>Z/<nickname-path>
24 where nickname-path's first component must not start with a digit
25 contain ~ or @ (: is not allowed in refs hence the squashing)
27 ijackson@chiark.greenend.org.uk/2012-01-20T225127Z/reorg/sponge
28 NB only exactly that date format is allowed and timezone must be Z.
30 Branches may be specified as
31 [<email>@[<domain.name>/][<date-spec>/]<nickname-path-spec>
33 <nickname-path-spec> may be
35 ./<nickname-new-leaf-component>
36 ../<nickname-path-spec>
39 <approximate date spec containing at least one ~>
40 means all branches are candidates; when we come
41 to select, take the branch nearest that date rather than
42 the most recent; the date spec is intepreted by date -d
43 after ~s have been replaced by spaces
44 A prefix of the ISO8601 date spec, stopping just after a
45 numeric component (or at the end)
47 So overall, if the current branch is
48 ijackson@chiark.greenend.org.uk/2011-08-20T120320Z/fixes/pudding
49 then all of the following can refer to the same branch
57 ijackson@/reorg/sponge
58 ijackson@/2012/reorg/sponge
59 ijackson@chiark.greenend.org.uk/reorg/sponge
60 ijackson@chiark.greenend.org.uk/2012-01-20T225127Z/reorg/sponge
63 1. prefer branches with email address (or domain)
64 matching current branch
65 2. prefer branches with our own email address (or domain)
67 Within this there may be branches with multiple dates; prefer the most