scan-tree: detect non-bare repository and stop scanning early
We don't want to descend into every subdirectory of a git repository
with a workdir.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
diff --git a/scan-tree.c b/scan-tree.c
index 4da21a4..67f4550 100644
--- a/scan-tree.c
+++ b/scan-tree.c
@@ -89,6 +89,10 @@
add_repo(base, path);
return;
}
+ if (is_git_dir(fmt("%s/.git", path))) {
+ add_repo(base, fmt("%s/.git", path));
+ return;
+ }
dir = opendir(path);
if (!dir) {
fprintf(stderr, "Error opening directory %s: %s (%d)\n",