Commits


ensure that we always install static binaries to gotweb's chroot Compile static libexec binaries for gotweb, keeping them separate from the main build. Use the same source files but a separate set of Makefiles. Previously, 'make web-install' installed whichever libexec binaries had already been built, and if those happened to be dynamically linked they failed to run inside the chroot which resulted in "privsep peer process closed pipe" being rendered on the index page.


fix a bug where 'got revert -R' failed on added subtrees The command could fail with "got: no such entry found in tree". This problem is reproduced by the regression test added in this commit. This happened because file index entries were processed in the wrong order by diff_fileindex_dir(). To fix this, keep removed entries in the RB tree and skip them when the file index is written out, rather than removing entries from the RB tree immediately causing side-effects for RB_NEXT and friends.


rewind directory file pointer before re-opening the directory


link just gotweb with kcgi, not the libexec helpers


display 'No repositories found in $got_repos_path" if gotweb finds no repos


create dir for public repos during 'make web-install'; avoids an unveil error


document that slowcgi(8) is needed for gotweb, too


fix problem with 'make web-install' not finding some of the files


remove pointless cwd checking from got_repo_map_path()


fix a bug where 'got log PATH' failed to map PATH into the repository The problem occured inside /usr/src/sys due to the /sys symlink, where /usr/src was a got work tree. If a work tree is present we already have the right path so checking the disk is pointless.


man page wording tweaks


make 'tog log' show first-parent history by default; add -b option and B key


make 'got log' show first-parent history by default; remove -f and add -b option


fix typo in got(1) man page markup


do not display unversioned files during 'got revert -R'