As promised, this is the "big tool rename" patch. The primary differences
since 0.99.6 are:
(1) git-*-script are no more. The commands installed do not
have any such suffix so users do not have to remember if
something is implemented as a shell script or not.
(2) Many command names with 'cache' in them are renamed with
'index' if that is what they mean.
There are backward compatibility symblic links so that you and
Porcelains can keep using the old names, but the backward
compatibility support is expected to be removed in the near
future.
Signed-off-by: Junio C Hamano <junkio@cox.net>
54 lines
1.2 KiB
Bash
Executable File
54 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Copyright (c) 2005 Junio C Hamano
|
|
#
|
|
|
|
test_description='git-checkout-index test.
|
|
|
|
This test registers the following filesystem structure in the
|
|
cache:
|
|
|
|
path0 - a file
|
|
path1/file1 - a file in a directory
|
|
|
|
And then tries to checkout in a work tree that has the following:
|
|
|
|
path0/file0 - a file in a directory
|
|
path1 - a file
|
|
|
|
The git-checkout-index command should fail when attempting to checkout
|
|
path0, finding it is occupied by a directory, and path1/file1, finding
|
|
path1 is occupied by a non-directory. With "-f" flag, it should remove
|
|
the conflicting paths and succeed.
|
|
'
|
|
. ./test-lib.sh
|
|
|
|
date >path0
|
|
mkdir path1
|
|
date >path1/file1
|
|
|
|
test_expect_success \
|
|
'git-update-index --add various paths.' \
|
|
'git-update-index --add path0 path1/file1'
|
|
|
|
rm -fr path0 path1
|
|
mkdir path0
|
|
date >path0/file0
|
|
date >path1
|
|
|
|
test_expect_failure \
|
|
'git-checkout-index without -f should fail on conflicting work tree.' \
|
|
'git-checkout-index -a'
|
|
|
|
test_expect_success \
|
|
'git-checkout-index with -f should succeed.' \
|
|
'git-checkout-index -f -a'
|
|
|
|
test_expect_success \
|
|
'git-checkout-index conflicting paths.' \
|
|
'test -f path0 && test -d path1 && test -f path1/file1'
|
|
|
|
test_done
|
|
|
|
|