Commit Briefs

Thomas Adam

replace "(cd path && git cmd)" with "git -C path cmd"

This matches the existing use of "got -r path cmd" and "git_commit path args".


Thomas Adam

gotadmin cleanup: don't delete pack files that are too young

similar to what we do for loose objects, avoid deleting pack files that were created "too soon" unless -a is given. This prevents races when gotadmin load, got fetch or gotd are installing a new pack file and a concurrent gotadmin clean attempts to remove it. ok stsp


Thomas Adam

take reachability in consideration when cleaning redundant packfiles

This wraps the cleaning up of loose objects and redundant pack files under a new functions, making the _prepare() and _complete() functions unnecessary. It walks the reachable commits unconditionally since that information is always needed and adapt how we purge loose objects after this change. The progress function is changed too and we log `ncommits' first, followed by the number of loose objects, followed by the rest. Pack files are now considered redundant when all their objects are provided by a bigger pack or are unreachable. ok stsp


Thomas Adam

gotadmin cleanup: remove redundant pack files

improvements and ok stsp@


Thomas Adam

portable: regress: minor cosmetic cleanup

Drop the forcing of "command" when calling sed(1).



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.


Thomas Adam

regress: cleanup: bypass sed wrapper

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






Stefan Sperling

handle pack index files which lack a corresponding pack file

ok millert






Stefan Sperling

implement 'gotadmin cleanup'