t / t2007-checkout-symlink.shon commit Merge branch 'sp/fetch-optim' (5b278eb)
   1#!/bin/sh
   2#
   3# Copyright (c) 2007 Junio C Hamano
   4
   5test_description='git checkout to switch between branches with symlink<->dir'
   6
   7. ./test-lib.sh
   8
   9test_expect_success setup '
  10
  11        mkdir frotz &&
  12        echo hello >frotz/filfre &&
  13        git add frotz/filfre &&
  14        test_tick &&
  15        git commit -m "master has file frotz/filfre" &&
  16
  17        git branch side &&
  18
  19        echo goodbye >nitfol &&
  20        git add nitfol
  21        test_tick &&
  22        git commit -m "master adds file nitfol" &&
  23
  24        git checkout side &&
  25
  26        git rm --cached frotz/filfre &&
  27        mv frotz xyzzy &&
  28        ln -s xyzzy frotz &&
  29        git add xyzzy/filfre frotz &&
  30        test_tick &&
  31        git commit -m "side moves frotz/ to xyzzy/ and adds frotz->xyzzy/"
  32
  33'
  34
  35test_expect_success 'switch from symlink to dir' '
  36
  37        git checkout master
  38
  39'
  40
  41rm -fr frotz xyzzy nitfol &&
  42git checkout -f master || exit
  43
  44test_expect_success 'switch from dir to symlink' '
  45
  46        git checkout side
  47
  48'
  49
  50test_done