submit
Installation
SKILL.md
Submit
Submitting publishes a commit prepared with the commit-msg skill as a pull request. From then on the PR description holds the message body and is its source of truth, edited on GitHub as often as not, and the commit keeps only its title, so the two never drift apart.
Takes an optional draft argument.
Preconditions
- Git, or Sapling where git config has
devroot.vcs=sapling, which follows its own section below. - The branch holds exactly one commit over its base,
origin/<default branch>or the upstream's on a fork; in Sapling,sl log -r 'draft() & ::.'lists one commit. None: stop. Several: stop and offer squash, or submit-stack for one PR per commit. - The branch is a task branch, never the default branch. In Sapling on a shared repo, where
originis canonical, there is no named branch: the commit is a draft on top of the default branch, andsl pr submitpushes it aspr<number>. Never push a named branch for it. - Nothing here touches the working tree or the index.
The user's invocation is the confirmation for pushing and opening the PR; never push anywhere else.