mirror of
https://github.com/git/git.git
synced 2024-12-14 04:18:16 +08:00
39 lines
946 B
Bash
39 lines
946 B
Bash
|
#!/bin/sh
|
||
|
|
||
|
test_description='git-add -u with path limiting
|
||
|
|
||
|
This test creates a working tree state with three files:
|
||
|
|
||
|
top (previously committed, modified)
|
||
|
dir/sub (previously committed, modified)
|
||
|
dir/other (untracked)
|
||
|
|
||
|
and issues a git-add -u with path limiting on "dir" to add
|
||
|
only the updates to dir/sub.'
|
||
|
|
||
|
. ./test-lib.sh
|
||
|
|
||
|
test_expect_success 'setup' '
|
||
|
echo initial >top &&
|
||
|
mkdir dir &&
|
||
|
echo initial >dir/sub &&
|
||
|
git-add dir/sub top &&
|
||
|
git-commit -m initial &&
|
||
|
echo changed >top &&
|
||
|
echo changed >dir/sub &&
|
||
|
echo other >dir/other
|
||
|
'
|
||
|
|
||
|
test_expect_success 'update' 'git-add -u dir'
|
||
|
|
||
|
test_expect_success 'update touched correct path' \
|
||
|
'test "`git-diff-files --name-status dir/sub`" = ""'
|
||
|
|
||
|
test_expect_success 'update did not touch other tracked files' \
|
||
|
'test "`git-diff-files --name-status top`" = "M top"'
|
||
|
|
||
|
test_expect_success 'update did not touch untracked files' \
|
||
|
'test "`git-diff-files --name-status dir/other`" = ""'
|
||
|
|
||
|
test_done
|