git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: update_linked_gitdir writes relative path to .git/worktrees/<id>/gitdir

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 7, 2016, 23:56 UTC
Message-ID
<xmqqlh6w9isp.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<1454789548.23898.223.camel@mattmccutchen.net>
Matt McCutchen <matt@mattmccutchen.net> writes:
> I noticed that when update_linked_gitdir chooses to update
> .git/worktrees/<id>/gitdir, the path it writes is relative, at least
> under some circumstances.  This contradicts the gitrepository-layout
> man page, which says:

Duy, is it safe to say that the fix has already been cooking in 'next' as nd/do-not-move-worktree-manually topic, we are about to solve this by merging down to 'master', _and_ it is very much appreciated when reporting bugs people check if a presumed fix is already cooking in 'next', try it to verify if it really fixes their problem, and send in a "OK fix is good" / "No that does not fix my case"?

Show 33 quoted lines
>
> worktrees/<id>/gitdir::
>         A text file containing the absolute path back to the .git file
>         that points to here.
>
> IIUC, this behavior defeats one of the three safeguards that is
> supposed to prevent "git worktree prune" from pruning information for
> worktrees that still exist.
>
> A simple script to reproduce:
>
> #!/bin/bash
> set -e -x
> rm -rf repo worktree2
> git init repo
> cd repo
> touch foo
> git add foo
> git commit -m 'dummy commit'
> git worktree add ../worktree2 -b branch2
> cat .git/worktrees/worktree2/gitdir
> touch -d '2 days ago' .git/worktrees/worktree2/gitdir
> (cd ../worktree2 && git status)
> cat .git/worktrees/worktree2/gitdir
>
> Trying this on master as of earlier today (ff4ea60), I get:
>
> [...]
> /PATH/REDACTED/worktree2/.git
> [...]
> .git
>
> Matt
Previous: Matt McCutchenNext: Matt McCutchen
Message 2 of 10 in “update_linked_gitdir writes relative path to .git/worktrees/<id>/gitdir”
  1. Matt McCutchenFeb 6, 2016
  2. Junio C HamanoFeb 7, 2016
  3. Matt McCutchenFeb 8, 2016
  4. Duy NguyenFeb 8, 2016
  5. Jeff KingFeb 8, 2016
  6. Junio C HamanoFeb 8, 2016
  7. Matt McCutchenFeb 9, 2016
  8. Junio C HamanoFeb 9, 2016
  9. Making the "Note from the maintainer" information discoverableMatt McCutchen, Feb 9, 2016
  10. git.txt: encourage bug reporters to test recent versionsMatt McCutchen, Feb 9, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.