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

Re: fixing workdirs

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 9, 2010, 22:25 UTC
Message-ID
<7vy6dkl2d0.fsf@alter.siamese.dyndns.org>
In-Reply-To
<20100709075617.GD2304@madism.org>
Pierre Habouzit <madcoder@madism.org> writes:
Show 13 quoted lines
> On Thu, Jul 08, 2010 at 12:40:11PM -0700, Junio C Hamano wrote:
>> Pierre Habouzit <madcoder@madism.org> writes:
>> 
>> > for the first one, the fix is simple: workdirs have now a name, and
>> > their HEAD reflog lives in the "master" git repository reflog namespace
>> > under logs/workdir/$workdir_name/HEAD. The workdir HEAD reflog is then a
>> > symlink to the masters.
>> 
>> I think this is a sane thing to do, except for the "symlink" part but that
>> would be just a minor implementation detail.
>
> What would you suggest instead of the symlink then ? (knowing that all
> the workdir is just a full symlink farm at them moment).

I can imagine that we may want to have a general mechanism to help an object store that belongs to one "primary" repository be aware of ref-like things that live outside of the repoistory itself, and not just a special purpose hack suitable only to handle the workdirs. E.g., we have talked about a "fork" created by "clone -s" wanting the forkee repository to be aware of its refs, so that rewinding the refs in the forkee repository and then running gc there won't remove the objects now unnecessary in the forkee but still needed by the forker repository.

It shouldn't be hard to do something similar to "gitdir: " support for this without using a symlink, no?

Previous: Pierre HabouzitNext: Pierre Habouzit
Message 8 of 10 in “fixing workdirs”
  1. Pierre HabouzitJul 8, 2010
  2. TaitJul 8, 2010
  3. Joshua JensenJul 8, 2010
  4. Pierre HabouzitJul 9, 2010
  5. Junio C HamanoJul 8, 2010
  6. Avery PennarunJul 8, 2010
  7. Pierre HabouzitJul 9, 2010
  8. Junio C HamanoJul 9, 2010
  9. Pierre HabouzitJul 19, 2010
  10. Jan HudecAug 17, 2010

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.