Commits


portable: propagate AM_CFLAGS/AM_CPPFLAGS Compiling with warnings and certain compiler flags is important for security and bug-free code. Set a bunch of warnings via AM_CFLAGS in a common Makefile, and let those values propagate to all other Makefiles. While here, also fix the version string to remove quotes.


portable: compat: remove unused files Fix up a weird automerge where some files referenced are either not used any more or have already been included.


portable: fix READMEs Remove conflict markers in README, and add mailing-list link to both READMEs. Noticed by stsp


portable: initial Linux compilation This commit modifies the GoT main branch to be able to compile it under linux.


update a CAVEAT in got.1 now that 'got merge' exists


interrupt 'got histedit' upon missing/unversioned/not-deleted files


interrupt 'got rebase' upon missing/unversioned/not-deleted files


document all reasons why 'got merge' might be interrupted


make 'got merge' interrupt the merge upon undeleted and unversioned files


print additional stats about things that went wrong during a merge


fix 'got fetch' downloading too many objects in some cases Always announce all local references to the server when fetching changes. We used to do this only in mirror mode. In regular mode only refs/tags and refs/remotes/origin were announced, which could result in unnecessary downloads if relevant objects exist in refs/heads or elsewhere.


got_sha1_digest_to_str() writes to char * ok stsp


fix unsigned/signed char mismatch in parse.y ok stsp


match the unsigned char type used by the zlib interface ok stsp


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@


portable: tog: add back _XOPEN_SOURCE_EXTENDED As with OpenBSD, FreeBSD requires that _XOPEN_SOURCE_EXTENDED is defined before including <ncurses.h>, otherwise things break. On other systems (Linux), _XOPEN_SOURCE_EXTENDED is already defined, so leaving that declared unconditionally throws an error. Keep the definition, but only include it on !Linux systems. Issue reported by Christian "naddy" Weisgerber


gotadmin: fixed GOT_LIBEXECDIR path libexecdir should be used over bindir. Noticed by Christian "naddy" Weisgerber


enable gotadmin Add gotadmin to configure.ac, etc., so it can be built and installed. OK thomas.adam


implement 'got merge -n' which interrupts before creating a merge commit


make it possible to merge vendor branches with 'got merge'


portability: fix typos Fix some typos. From Christian "naddy" Weisgerber


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.


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


Github: add mechanism to autoclose prs The GitHub repository is read-only and exists so that CI can be run. We do not want PRs to be issued against the repository, so should someone do that, the PR is closed with a friendly message pointing them to the mailing list instead.


match printf specifiers and (cast) types for portability ok stsp