Commit Briefs
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.
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
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
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.
add submodule tests
ok semarie
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
add -E option to 'got checkout' allowing use of a non-empty work tree path
needed by and ok kn@
make 'got checkout' and 'got update' work with read-only repositories
but warn users about the garbage collection problem