prefix_path: show gitdir when arg is outside repo
When developing a script, it can be painful to understand why Git thinks something is outside the current repo, if the current repo isn't what the user thinks it is. Since this can be tricky to diagnose, especially in cases like submodules or nested worktrees, let's give the user a hint about which repository is offended about that path. Signed-off-by: Emily Shaffer <emilyshaffer@google.com> Acked-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d0654dc308
commit
e0020b2f82
@ -439,7 +439,8 @@ static void init_pathspec_item(struct pathspec_item *item, unsigned flags,
|
||||
match = prefix_path_gently(prefix, prefixlen,
|
||||
&prefixlen, copyfrom);
|
||||
if (!match)
|
||||
die(_("%s: '%s' is outside repository"), elt, copyfrom);
|
||||
die(_("%s: '%s' is outside repository at '%s'"), elt,
|
||||
copyfrom, absolute_path(get_git_work_tree()));
|
||||
}
|
||||
|
||||
item->match = match;
|
||||
|
3
setup.c
3
setup.c
@ -121,7 +121,8 @@ char *prefix_path(const char *prefix, int len, const char *path)
|
||||
{
|
||||
char *r = prefix_path_gently(prefix, len, NULL, path);
|
||||
if (!r)
|
||||
die(_("'%s' is outside repository"), path);
|
||||
die(_("'%s' is outside repository at '%s'"), path,
|
||||
absolute_path(get_git_work_tree()));
|
||||
return r;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user