Commit Briefs


Stefan Sperling

make 'got rm' report an "unexpected status" error for unversioned files

ok millert@


Stefan Sperling

make 'got rm' behave like rm(1) for paths found missing on disk

ok millert@




Stefan Sperling

wrap overlong lines


Stefan Sperling

add O_CLOEXEC (close-on-exec) to openat(2) calls

suggested by millert ok thomas_adam


Stefan Sperling

add O_CLOEXEC (close-on-exec) flag to open(2) calls

suggested by millert ok thomas_adam


Stefan Sperling

add "e" (close-on-exec) flag to fopen(3) calls

suggested by millert ok thomas_adam



Stefan Sperling

let gotadmin find the repository automatically if invoked in a work tree

Move a small amount of code from worktree.c to a new file worktree_open.c, which contains everything required to open and close a work tree and inspect some of its basic parameters. This can be used by gotadmin. ok tracey



Stefan Sperling

show commit progress output when 'got merge -c' is used

Otherwise no progress output is shown at all with this command. Commit progress output will also display any additional changes which resulted from conflict resolution. ok millert@


Stefan Sperling

for portability, handle errno variations upon open(2) failure with O_NOFOLLOW

Problem pointed out by naddy for FreeBSD -portable. Discussed with millert, thomas adam, and naddy.


Stefan Sperling

allow bad symlinks to survive a merge

Commands which perform merges will now install bad symlinks as symlinks in the work tree, instead of creating them as regular files. This means bad symlinks committed with 'got commit -S' (or Git) will be preserved. The decision to introduce a bad symlink is done at commit-time and merges should not forcefully reverse this decision. The cherrypick and backout commands require a manual commit step, and a merge result with bad symlinks will require use of 'got commit -S'. Additional testing by thomas adam