Commit Briefs

Stefan Sperling

fix default branch name written to Git config file by 'got clone'

The generated Git config file instructed Git to fetch all branches rather than the default branch as was intended. Check generated configuration files in all clone tests in order to catch such problems in the future.




Stefan Sperling

make dangling symbolic references show up in 'got ref -l'

Storing a resolved ID for each reference list item was a bad idea. This ID cannot be resolved if a symbolic references points to a reference which does not exist. Such symrefs were skipped by got ref -l as a result. Just let users of reference lists resolve the IDs as needed.


Stefan Sperling

in cmd_checkout() handle basename(3) modifying its argument

ok naddy@


Christian Weisgerber

fix typo in error message





Christian Weisgerber

use plain write() in place of dprintf() with a pre-formatted string

step-by-step guidance from millert; ok millert stsp


Stefan Sperling

zap trailing tabs


Stefan Sperling

add got.conf(5) configuration file

ok tracey


Stefan Sperling

actually make use of an intermediate variable in cmd_clone()

found by tracey's scan-build


Stefan Sperling

add -s option to 'got remove' which deletes files in a particular status

This makes it easy to deal with files that were deleted from disk by external tooling which modified the work tree. Such files are left in missing (!) status and can now be marked for deletion in bulk via 'got rm -s\! -R .' For consistency, modified (M) files can now be removed with 'got rm -s M' which implies 'got rm -f'. Prompted by feedback from krw@


Stefan Sperling

add -s option to 'got status' which acts as a status code filter

Advantages over using grep are that the list of codes is validated against a list of known status codes, and that it is easier to match staged files which can display status codes in one or both of two columns. Prompted by feedback from krw@


Stefan Sperling

make 'got log' -R and -P options work in combination

With -R, the -P option did not show any paths. Regression test added here demonstrates the problem.


Stefan Sperling

Add a 'got info' command which displays work tree meta-data.

Remove the alias 'got in' for 'got init'. The 'in' alias was too close to either 'init' or 'info'. ok tracey, millert









Stefan Sperling

show a list of paths changed in a commit with 'got log -P', and in tog

requested by matthieu@