46 lines
860 B
46 lines
860 B
#!/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
|
|
|