remove_dir_recursively(): Add flag for skipping removal of toplevel dir
Add the REMOVE_DIR_KEEP_TOPLEVEL flag to remove_dir_recursively() for
deleting everything inside the given directory, but _not_ the given
directory itself.
Note that this does not pass the REMOVE_DIR_KEEP_NESTED_GIT flag, if set,
to the recursive invocations of remove_dir_recursively(). It is likely to
be a a bug that has been present since REMOVE_DIR_KEEP_NESTED_GIT was
introduced (a0f4afb), but this commit keeps the same behaviour for now.
Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
1
dir.h
1
dir.h
@ -102,6 +102,7 @@ extern void setup_standard_excludes(struct dir_struct *dir);
|
||||
|
||||
#define REMOVE_DIR_EMPTY_ONLY 01
|
||||
#define REMOVE_DIR_KEEP_NESTED_GIT 02
|
||||
#define REMOVE_DIR_KEEP_TOPLEVEL 04
|
||||
extern int remove_dir_recursively(struct strbuf *path, int flag);
|
||||
|
||||
/* tries to remove the path with empty directories along it, ignores ENOENT */
|
||||
|
||||
Reference in New Issue
Block a user