From: Eric Sunshine Date: Fri, 31 Jul 2015 19:35:18 GMT Subject: Re: [PATCH v3 1/2] worktrees: add die_if_shared_symref Message-ID: In-Reply-To: <1438369297-4838-1-git-send-email-dturner@twopensource.com> On Fri, Jul 31, 2015 at 3:01 PM, David Turner wrote: > Add a new function, die_if_shared_symref, which works like > die_if_checked_out, but for all references. Refactor > die_if_checked_out to work in terms of die_if_shared_symref. > > Soon, we will use die_if_shared_symref to protect notes merges in > worktrees. I wonder if the diagnostic: 'blorp' is already checked out at '/path/name/' emitted by check_linked_checkout() needs to be adjusted for this change. It still makes sense for die_if_checked_out(), but sounds odd for die_if_shared_symref(). > Signed-off-by: David Turner > --- > diff --git a/branch.h b/branch.h > index 58aa45f..b2fca30 100644 > --- a/branch.h > +++ b/branch.h > @@ -59,4 +59,11 @@ extern int read_branch_desc(struct strbuf *, const char *branch_name); > */ > extern void die_if_checked_out(const char *branch); > > +/* > + * Check if a symref points to a branch in the main worktree or any linked > + * worktree and die (with a message describing its checkout location) if > + * it is. Ditto here. This is still talking about "branch" and "checkout", whereas it's actually checking if a symref in some worktree already references the given referent. > + */ > +extern void die_if_shared_symref(const char *symref, const char *branch); s/branch/referent/ or something?