Merge branch 'jk/maint-1.6.3-ls-files-no-ignore-cached' into maint-1.6.4
* jk/maint-1.6.3-ls-files-no-ignore-cached: ls-files: excludes should not impact tracked files
This commit is contained in:
commit
caa7dac163
@ -170,10 +170,6 @@ static void show_files(struct dir_struct *dir, const char *prefix)
|
|||||||
if (show_cached | show_stage) {
|
if (show_cached | show_stage) {
|
||||||
for (i = 0; i < active_nr; i++) {
|
for (i = 0; i < active_nr; i++) {
|
||||||
struct cache_entry *ce = active_cache[i];
|
struct cache_entry *ce = active_cache[i];
|
||||||
int dtype = ce_to_dtype(ce);
|
|
||||||
if (excluded(dir, ce->name, &dtype) !=
|
|
||||||
!!(dir->flags & DIR_SHOW_IGNORED))
|
|
||||||
continue;
|
|
||||||
if (show_unmerged && !ce_stage(ce))
|
if (show_unmerged && !ce_stage(ce))
|
||||||
continue;
|
continue;
|
||||||
if (ce->ce_flags & CE_UPDATE)
|
if (ce->ce_flags & CE_UPDATE)
|
||||||
@ -186,10 +182,6 @@ static void show_files(struct dir_struct *dir, const char *prefix)
|
|||||||
struct cache_entry *ce = active_cache[i];
|
struct cache_entry *ce = active_cache[i];
|
||||||
struct stat st;
|
struct stat st;
|
||||||
int err;
|
int err;
|
||||||
int dtype = ce_to_dtype(ce);
|
|
||||||
if (excluded(dir, ce->name, &dtype) !=
|
|
||||||
!!(dir->flags & DIR_SHOW_IGNORED))
|
|
||||||
continue;
|
|
||||||
if (ce->ce_flags & CE_UPDATE)
|
if (ce->ce_flags & CE_UPDATE)
|
||||||
continue;
|
continue;
|
||||||
err = lstat(ce->name, &st);
|
err = lstat(ce->name, &st);
|
||||||
|
32
t/t3003-ls-files-exclude.sh
Executable file
32
t/t3003-ls-files-exclude.sh
Executable file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
test_description='ls-files --exclude does not affect index files'
|
||||||
|
. ./test-lib.sh
|
||||||
|
|
||||||
|
test_expect_success 'create repo with file' '
|
||||||
|
echo content >file &&
|
||||||
|
git add file &&
|
||||||
|
git commit -m file &&
|
||||||
|
echo modification >file
|
||||||
|
'
|
||||||
|
|
||||||
|
check_output() {
|
||||||
|
test_expect_success "ls-files output contains file ($1)" "
|
||||||
|
echo '$2' >expect &&
|
||||||
|
git ls-files --exclude-standard --$1 >output &&
|
||||||
|
test_cmp expect output
|
||||||
|
"
|
||||||
|
}
|
||||||
|
|
||||||
|
check_all_output() {
|
||||||
|
check_output 'cached' 'file'
|
||||||
|
check_output 'modified' 'file'
|
||||||
|
}
|
||||||
|
|
||||||
|
check_all_output
|
||||||
|
test_expect_success 'add file to gitignore' '
|
||||||
|
echo file >.gitignore
|
||||||
|
'
|
||||||
|
check_all_output
|
||||||
|
|
||||||
|
test_done
|
Loading…
x
Reference in New Issue
Block a user