Git, commits and the PR
A run makes one branch and ends in one pull request. Nothing else shows up in your branch list or your history.
The branch
Section titled “The branch”- Planning never touches git.
orch startcreates the plan’sBranch:,feature/<slug>(orfix/<slug>). It is the only branch a run creates.- Coders work on detached worktrees. A milestone’s work in progress (under review, parked, waiting for a fix) is kept in hidden refs under
refs/orch/<branch>/Mn.git branchdoesn’t list them andgit pushdoesn’t send them. - Coders never commit, push or switch branches themselves.
The commits
Section titled “The commits”Each landed milestone is one commit. Its subject is the coder’s COMMIT: line, which says what changed in your repo’s style, with a trailer naming the milestone:
feat(api): add POST /imports for bank CSVs
Milestone: M2With Commits: single in the plan header, the whole run is squashed into one commit at finish.
Finishing
Section titled “Finishing”orch finish- Checks every milestone has landed and the tree is clean.
- Runs the check command on the feature branch.
- Squashes, if
Commits: single. - Removes the worktrees and hidden refs.
- Pushes the branch and opens a PR into
Base:withgh, or prints the compare link ifghisn’t available.
orch finish --no-push only cleans up. Neither the lead nor the event manager pushes on its own; finishing is always your call.
Upgrading from 4.4 and earlier
Section titled “Upgrading from 4.4 and earlier”Older versions used an orch/<slug> branch plus one branch per milestone. A run in progress keeps its work: an existing orch/<slug>-Mn branch is picked up into the hidden ref, and orch finish removes the old task branches.