reason);
die(_("cannot move a locked working tree"));
}
- if (validate_worktree(wt, &errmsg))
+ if (validate_worktree(wt, &errmsg, 0))
die(_("validation failed, cannot move working tree: %s"),
errmsg.buf);
strbuf_release(&errmsg);
reason);
die(_("cannot remove a locked working tree"));
}
- if (validate_worktree(wt, &errmsg))
+ if (validate_worktree(wt, &errmsg, WT_VALIDATE_WORKTREE_MISSING_OK))
die(_("validation failed, cannot remove working tree: %s"),
errmsg.buf);
strbuf_release(&errmsg);
- if (!force)
- check_clean_worktree(wt, av[0]);
+ if (file_exists(wt->path)) {
+ if (!force)
+ check_clean_worktree(wt, av[0]);
- ret |= delete_git_work_tree(wt);
+ ret |= delete_git_work_tree(wt);
+ }
/*
* continue on even if ret is non-zero, there's no going back
* from here.