Commit Briefs

Christian Weisgerber

use test(1) -eq and -ne to compare integers, and reduce quoting

This brings the rest of the regression test scripts in line with patch.sh.


Christian Weisgerber

shell code fixes

Escape sequences are not handled by every echo(1), e.g. not on FreeBSD. '?' is a glob character and must be quoted. '!' is not a shell meta character. ok tracey stsp



Stefan Sperling

make 'got checkout' display the checked out reference and commit ID

ok tracey




Stefan Sperling

detect unknown repository format extensions (such as sha256 format)

ok millert


Christian Weisgerber

switch function declarations from Korn shell to Bourne/POSIX shell syntax

ok stsp


Stefan Sperling

add a -q option to tests for quiet output and use it for 'make regress'

Previous default output remains when test cases are run individually. ok tracey



Stefan Sperling

stop using realpath(3) to resolve a symlink target in install_symlink()

We should not resolve a symlink target path recursively when installing a symlink in the work tree. We want to handle this symlink's target, not the end result of following a chain of symlinks in case such links already exist.








Stefan Sperling

add submodule tests

ok semarie


Stefan Sperling

be helpful when users try to check out work trees without a known branch

Provide a useful error message in such cases and explicitly document intentional restrictions in the got(1) man page. Prompted by a question from Adam Steen via bsd.network https://bsd.network/@adams/103768951483318235


Stefan Sperling

add -E option to 'got checkout' allowing use of a non-empty work tree path

needed by and ok kn@


Stefan Sperling

make 'got checkout' and 'got update' work with read-only repositories

but warn users about the garbage collection problem


Stefan Sperling

detect and ignore Git submodules