Commit Briefs


ac3cdf31e0 Thomas Adam

regress: replace "sed -i" with ed(1) for portable in-place editing

"sed -i" is fundamentally unportable. GNU and OpenBSD sed(1) treat the extension for the backup file as an optional argument and use "sed -i" for no backup file. FreeBSD sed(1) treats the extension as an obligatory argument and uses "sed -i ''" for no backup file. There is no single syntax that works for both. ok stsp op


e6f45b7279 Thomas Adam

regress: replace unportable ln -h option with rm && ln

ok stsp


1b5d300f3f Thomas Adam

have ignore patterns with trailing slashes match directories only

ok jamsek


3c8e3a64b0 Thomas Adam

hide unexpected diff output from xfail test


8682db42e0 Thomas Adam

add xfail test for 'got status' ignore patterns with a trailing slash

Patch by Lucas


b6b86fd1b9 Thomas Adam

remove trailing whitespace; patch by Josiah Frentsos


1684783ba6 Thomas Adam

drop (needless?) sleep(1) in status.sh

ok stsp



fc414659b4 Thomas Adam

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.



8528beeff9 Thomas Adam

do not skip ignored directories in 'got status' if they contain tracked files

Fixes regression introduced by commit 41f061b2f459318f3738f59d7676efccc4beb344 where tracked files inside an ignored directory were reported as missing.


f1417e9f1c Thomas Adam

sort and de-duplicate work tree path command line arguments

This is important in cases like 'got diff file.txt file.txt' which should only show the diff for file.txt once. suggested by kn@


c206b220ed Thomas Adam

regress: provide a sed wrapper

In order to portably handle the difference in how 'sed -i' works between *BSD and Linux, provide a wrapper to invoke the underying system sed(1) based on which OSTYPE is in use.


fa37079fce Thomas Adam

regress: use gdate/gln if on *BSD

To minimise the amount of churn between the difference in date(1) and ln(n) semantics, use gdate and gln from coreutils.


dd6165e49c Thomas Adam

regress: fix test failures using ln(1)

GNU ln uses -T instead of -h for no-target-directory. OK thomas.adam


67d7451ca0 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



4f3c844bea Stefan Sperling

make 'got update' display the worktree's branch name upon success

ok tracey






f6cae3ed1e Christian Weisgerber

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

ok stsp


081470ac52 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@