Re: [PATCHv6 5/7] worktree: add function to check if worktrees are in use
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Dec 8, 2016, 10:51 UTC
- Message-ID
- <CACsJy8DMhC7Umnqf+-ViOBKn46Emtan4647=MDdLoYXVNB0=6A@mail.gmail.com>
- In-Reply-To
- <CACsJy8ANNz6FsJ4_5MOhj2Qqd+wHHu5UpVOAobqEiHU2KM26eg@mail.gmail.com>
On Thu, Dec 8, 2016 at 5:40 PM, Duy Nguyen <pclouds@gmail.com> wrote:
> Alternatively, we could add a new flag to get_worktrees() to tell it > to return all worktrees if there is a least one linked worktree, or > return NULL if there's only main worktree. I'm not sure if this is > clever or very stupid.
No, this may be better. Add a flag to say "returns linked worktrees _only_". Which means when you're in a "normal" repo, get_worktrees() with this flag returns NULL. When you're in a multiple-worktree repo, it returns all linked worktrees (no main worktree). I think I might have a use for this flag in addition to this uses_worktrees() here. uses_worktrees() look quite simple with that flag
int uses_worktrees(void)
{
struct worktree **worktrees = get_worktrees(WT_LINKED_ONLY);
int retval = worktrees != NULL;
free_worktrees(worktrees);
return retval;
}-- Duy