Re: [BUG] Wrong worktree path when using multiple worktree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 3, 2015 at 11:58 AM, Nicolas Morey-Chaisemartin
<nicolas@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> Hi,
>
> There seem to be an issue with the path computed for a worktree when multiple worktree were created (using git worktree)
> In my Setup, I have 3 repos:
> A/repo (main One)
> A/repo-patches (worktree, using branch dev)
> B/repo (worktree, using branch next)
>
> I'm working in A/repo-patches an run:
> $ git checkout next
> fatal: 'next' is already checked out at 'A/repo-patches'
>
> Which is partially true but not completely.
> I looked a bit in the code and found that the issue comes from here (get_linked_worktree):
>     if (!strbuf_strip_suffix(&worktree_path, "/.git")) {
>         strbuf_reset(&worktree_path);
>         strbuf_addstr(&worktree_path, absolute_path("."));
>         strbuf_strip_suffix(&worktree_path, "/.");
>     }
> Because it wrongfully assumes that I am in the linked worktree.
> I checked in the .git/worktree files and couldn't see anything that actually points to where the repo are setup.
>
> Nicolas

This is code that I worked on, but I am unable to reproduce it locally
just yet.  Before I dig too deep, could you report the contents of
"A/repo/.git/worktrees/repo-patches/gitdir" (or similar)?  There is
another issue reported[1] where the contents of the gitdir for a
linked worktree are overwritten in some cases.  A fix for this is
being worked on (see discussion).

In the mean time, I will continue to try and reproduce.

[1]: http://thread.gmane.org/gmane.comp.version-control.git/280307
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]