#!/bin/sh test_description='checkout should leave clean stat info' GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME . ./test-lib.sh test_expect_success 'setup' ' echo hello >world && git update-index --add world && git commit -m initial && git branch side && echo goodbye >world && git update-index --add world && git commit -m second ' test_expect_success 'branch switching' ' git reset --hard && test "$(git diff-files --raw)" = "" && git checkout main && test "$(git diff-files --raw)" = "" && git checkout side && test "$(git diff-files --raw)" = "" && git checkout main && test "$(git diff-files --raw)" = "" ' test_expect_success 'path checkout' ' git reset --hard && test "$(git diff-files --raw)" = "" && git checkout main world && test "$(git diff-files --raw)" = "" && git checkout side world && test "$(git diff-files --raw)" = "" && git checkout main world && test "$(git diff-files --raw)" = "" ' test_done