Commit Briefs

Thomas Adam

Release 0.64 (tags/0.64)


Thomas Adam

portable: remove queue.h

queue.h is included portably, so it shouldn't be included directly.


Thomas Adam

portable: enable merge.sh

This seemingly went walkies, so reenabling it.


Thomas Adam

regress: make merge.sh more POSIXy

Don't use '==' for equality matching in sh, as this won't work across all shells. ok @naddy


Thomas Adam

portable: running tests when shell is dash

Ubuntu's default shell is dash, when using /bin/sh. The portable nature of got is such that "$OSTYPE" to determine the host type (linux, bsd, etc.) is bash-specific and is not part of POSIX. autotools already provide a mechanism for determining the underlying platform type, and PLATFORM is already a subst value. Therefore, let the -portable parts of the regress test-suite use $PLATFORM to look at the underlying OS type. The tests themselves already expect /bin/sh to be POSIX-compliant in all other areas, so there should be no need to change the #! lines.


Thomas Adam

regress: cleanup: bypass sed wrapper

The sed portable wrapper works for inplace editing, but isn't required for just a single stream.


Thomas Adam

regress: make test operands POSIX compliant

Since the interpreter for the regress shell scripts are using /bin/sh this will usually imply some level of POSIX compliance (that isn't bash-specific, for instance). Some systems use dash as their sh shell and as such is stricter POSIX compliance. To help -portable, make the shell test checks use a single '=' for equality, rather than '=='.


Thomas Adam

sync dist file list


Thomas Adam

switch tog ref view's sort order command key to "o" instead of "s"

The letter "o" does not overlap with existing options of 'got ref' and is also used by mutt(1) for this purpose.


Thomas Adam

portable: include worktree_open

Make worktree_open part of the build.



Thomas Adam

fall back to comparison by name when refs have the same timestamp

This fixes an issue where some references were missing from lists of references sorted by timestamp.








Thomas Adam

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



Thomas Adam

Fix mandoc HTML rendering for command aliases

Replace hand-rolled parentheses with the proper mdoc(7) macro, otherwise the closing ")" ends up inside the command description. Reported by Josh Rickmar, thanks!



Thomas Adam

switch branches during noop rebases

Always update to the specified branch even if the branch is already rebased (no commits needed to be rebased, and the branch does not need a fast forward). With the old behavior of erroring and staying on the current branch, I sometimes found myself ignoring the error message, treating it as information and assuming the branch update, and later on committing on top of origin/main instead of the main branch. feedback and ok stsp