Merge branch 'en/dir-traversal'
"git clean" and "git ls-files -i" had confusion around working on or showing ignored paths inside an ignored directory, which has been corrected. * en/dir-traversal: dir: introduce readdir_skip_dot_and_dotdot() helper dir: update stale description of treat_directory() dir: traverse into untracked directories if they may have ignored subfiles dir: avoid unnecessary traversal into ignored directory t3001, t7300: add testcase showcasing missed directory traversal t7300: add testcase showing unnecessary traversal into ignored directory ls-files: error out on -i unless -o or -c are specified dir: report number of visited directories and paths with trace2 dir: convert trace calls to trace2 equivalents
This commit is contained in:
6
dir.h
6
dir.h
@ -336,8 +336,14 @@ struct dir_struct {
|
||||
struct oid_stat ss_info_exclude;
|
||||
struct oid_stat ss_excludes_file;
|
||||
unsigned unmanaged_exclude_files;
|
||||
|
||||
/* Stats about the traversal */
|
||||
unsigned visited_paths;
|
||||
unsigned visited_directories;
|
||||
};
|
||||
|
||||
struct dirent *readdir_skip_dot_and_dotdot(DIR *dirp);
|
||||
|
||||
/*Count the number of slashes for string s*/
|
||||
int count_slashes(const char *s);
|
||||
|
||||
|
Reference in New Issue
Block a user