• J
    clean: preserve nested git worktree in subdirectories · ae2f203e
    Junio C Hamano 提交于
    remove_dir_recursively() has a check to avoid removing the directory it
    was asked to remove without recursing into it and report success when the
    directory is the top level of a working tree of a nested git repository,
    to protect such a repository from "clean -f" (without double -f). If a
    working tree of a nested git repository is in a subdirectory of a toplevel
    project, however, this protection did not apply by mistake; we forgot to
    pass the REMOVE_DIR_KEEP_NESTED_GIT down to the recursive removal
    codepath.
    
    This requires us to also teach the higher level not to remove the
    directory it is asked to remove, when the recursed invocation did not
    remove the directory it was asked to remove due to a nested git
    repository, as it is not an error to leave the parent directories of such
    a nested repository.
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    ae2f203e
dir.c 30.4 KB