1#!/bin/sh
   2test_description='checkout switching away from an invalid branch'
   4. ./test-lib.sh
   6test_expect_success 'setup' '
   8        echo hello >world &&
   9        git add world &&
  10        git commit -m initial
  11'
  12test_expect_success 'checkout should not start branch from a tree' '
  14        test_must_fail git checkout -b newbranch master^{tree}
  15'
  16test_expect_success 'checkout master from invalid HEAD' '
  18        echo 0000000000000000000000000000000000000000 >.git/HEAD &&
  19        git checkout master --
  20'
  21test_done