An unofficial terminal client for Tangled, optimized for humans and agents. tgcli.wisp.place

app: separate pull base revision #74

Merged secluded.site
targeting master from secluded.site/tg:push-zxkrmyurumoq
Merged opened by and assigned to secluded.site
targeting master from secluded.site/tg:push-zxkrmyurumoq

PR creation currently uses the base argument for both choosing the Git revision to diff against and naming the target branch in the pull record. That works for a local main branch, but not for a remote-tracking branch like upstream/main. Git needs the full ref to generate the patch, while the pull record should still say main.

This splits those values. The base is resolved to an exact commit for patch generation and a branch name for the record. Only local branches and configured remote-tracking branches are accepted, so tags, commit IDs, revision expressions, and ambiguous names fail early.

Fork PRs now require an explicit --base, since origin/HEAD can often at the fork rather than the target repository. pr update accepts the same option and checks that it resolves to the branch already stored in the PR.

Fixes: https://tangled.org/aly.codes/tg/issues/10

Commits 1

app: separate pull base revision