From: Nguyễn Thái Ngọc Duy Date: Fri, 3 Jun 2016 12:19:40 +0000 (+0700) Subject: worktree.c: add is_main_worktree() X-Git-Tag: v2.10.0-rc0~78^2~4 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/984ad9e56c9d884f7f1aa7d6b2052f3fb082ee5d worktree.c: add is_main_worktree() Main worktree _is_ different. You can lock (*) a linked worktree but not the main one, for example. Provide an API for checking that. (*) Add the file $GIT_DIR/worktrees/xxx/locked to avoid worktree xxx from being removed or moved. Signed-off-by: Nguyễn Thái Ngọc Duy Signed-off-by: Junio C Hamano --- diff --git a/worktree.c b/worktree.c index 0782e00983..12a766a38d 100644 --- a/worktree.c +++ b/worktree.c @@ -229,6 +229,11 @@ struct worktree *find_worktree(struct worktree **list, return *list; } +int is_main_worktree(const struct worktree *wt) +{ + return !wt->id; +} + int is_worktree_being_rebased(const struct worktree *wt, const char *target) { diff --git a/worktree.h b/worktree.h index 7ad15da0dc..e1c4715238 100644 --- a/worktree.h +++ b/worktree.h @@ -37,6 +37,11 @@ extern struct worktree *find_worktree(struct worktree **list, const char *prefix, const char *arg); +/* + * Return true if the given worktree is the main one. + */ +extern int is_main_worktree(const struct worktree *wt); + /* * Free up the memory for worktree(s) */