This change makes clangd add .gitignore files to the index directories that ignore everything using an asterisk (*) value. We only add these gitignore files when creating a new directory, to allow cases where the user doesn't want this behavior (unlikely but not sure).
This behavior is similar to meson, which automatically puts a gitignore file in all build directories.
no need for llvm::sys::path::filename, as .gitignore is already a file name.