#!/bin/sh test_description='basic git gc tests ' . ./test-lib.sh test_expect_success 'gc empty repository' ' git gc ' test_expect_success 'gc does not leave behind pid file' ' git gc && test_path_is_missing .git/gc.pid ' test_expect_success 'gc --gobbledegook' ' test_expect_code 129 git gc --nonsense 2>err && test_i18ngrep "[Uu]sage: git gc" err ' test_expect_success 'gc -h with invalid configuration' ' mkdir broken && ( cd broken && git init && echo "[gc] pruneexpire = CORRUPT" >>.git/config && test_expect_code 129 git gc -h >usage 2>&1 ) && test_i18ngrep "[Uu]sage" broken/usage ' test_expect_success 'gc is not aborted due to a stale symref' ' git init remote && ( cd remote && test_commit initial && git clone . ../client && git branch -m develop && cd ../client && git fetch --prune && git gc ) ' test_done