Commit Briefs

Thomas Adam

refactor got log -d and tog diffstat to compute diff once

This eliminates the previous performance cost by making 'got log -d' and tog diff view compute the diffstat while building the diff in a temp file like we do with 'got diff -d'. Also, keep the current 'got log -d' UI as per stsp's suggestion. ok stsp@



Thomas Adam

got: expand diffstat -d option to 'got diff'

Like got log -d, add the switch to 'got diff' to display a diffstat of changes; as per stsp's suggestion, we always include diff output with the diffstat. Disabled in gotwebd (for now :) Includes tweaks from op@ ok stsp@



Thomas Adam

add -d switch to log usage and sort lexicographically

patch by Josiah Frentsos


Thomas Adam

got: implement diffstat for got log and tog diff view

Add new got_diff_blob_cb() implementation to compute added/removed line metrics for a given diff. This enables displaying a diffstat with 'got log -d'. As per suggestion from stsp, change tog diff view to display the diffstat by default. ok stsp@





Thomas Adam

sync usage with reality

The -h and -V/--version flags must be given before the command; with those flags the command is actually optional, but don't over-complicate the usage string with these nitpicks. ok/improvements stsp@


Thomas Adam

add gotadmin init -b <branch> to specify repo head ref

Similar to `git init -b`. Includes a change to `got import` behaviour such that "main" is no longer hardcoded by default; instead, we import to the branch resolved via the repository's HEAD reference unless `got import -b` is used, and only if HEAD cannot be resolved to a branch do we fallback to "main". includes fix plus ok from stsp@


Thomas Adam

forbid rebase of references outside the refs/heads/ namespace

ok jrick



Thomas Adam

use Xo/Xc in the man pages

Patch by Josiah Frentsos; ok kn@


Thomas Adam

got(1): Replace 'Ar sign' with 'Cm sign'

Cm sign matches the markup used in the ssh-keygen(1) man page. Patch by Josiah Frentsos


Thomas Adam

Group options in accordance with style(9)

patch by Josiah Frentsos


Thomas Adam

rework got patch -c documentation

ok op@


Thomas Adam

warn about the interaction between got patch -p and -c

suggested by stsp@


Thomas Adam

got patch: add -c flag to apply at a specified commit

it's useful for e.g. to apply old patches that weren't generated by `got diff' or git-diff(1) and so lacks the metadata needed for the 3-way merge. manpage improvements from and ok stsp@





Thomas Adam

document pull request workflow in got.1 man page

With permission from Jelmer Vernooij to use my pull request config for Dulwich, and Jelmer's name, as a real-life example. ok tracey, jamsek


Thomas Adam

got commit: add flag to specify the author

This adds a new flag, `got commit -A', that allows to specify the commit author but retains the "committer" (which is obtained as usual via GOT_AUTHOR, got.conf or git config.) with lots of help from and ok stsp