public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox•com>
To: Michael Haggerty <mhagger@alum•mit.edu>
Cc: David Turner <dturner@twopensource•com>,
	git@vger•kernel.org, chriscool@tuxfamily•org, pclouds@gmail•com
Subject: Re: [PATCH v3 2/4] path: optimize common dir checking
Date: Mon, 17 Aug 2015 08:55:38 -0700	[thread overview]
Message-ID: <xmqqegj1gb9h.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <55CF811A.8060106@alum.mit.edu> (Michael Haggerty's message of "Sat, 15 Aug 2015 20:12:42 +0200")

Michael Haggerty <mhagger@alum•mit.edu> writes:

> If I understand correctly, you consider the decision of where a
> particular reference should be stored to be a kind of "business logic"
> decision that should live outside of the refs module. I don't think it
> is so important whether this knowledge is inside or outside of the refs
> module (I can live with it either way).

I think I misspoke.  The decision to make a particular reference,
e.g. HEAD or 'master' branch, a per-workspace one or a repo-wide
one, should not be made by individual refs backend (i.e. lower-half
of the refs module).  It could still be the responsibility of the
upper-half of the refs module and that _feels_ more kosher.

But without actual implementation of the interface between upper-
and lower-half of the refs module yet (as we only have fs based
backend that is tightly integrated within the refs module and
nothing else right now), I do not yet see a clear implementation for
the "is this thing common?" table Duy did that decides where things
go for everything except "refs/" part while letting the upper-half
of the refs module to take responsiblity of that decision for refs.
For one thing, "the refs module decides what is in refs/, Duy's
table decides everything else " is not even the right partition, in
the presence of things like HEAD, logs/, etc.

So...

  reply	other threads:[~2015-08-17 15:55 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-12 21:57 [PATCH v3 1/4] refs: clean up common_list David Turner
2015-08-12 21:57 ` [PATCH v3 2/4] path: optimize common dir checking David Turner
2015-08-12 22:48   ` Junio C Hamano
2015-08-13  9:05   ` Michael Haggerty
2015-08-14 17:04     ` Junio C Hamano
2015-08-14 20:04       ` David Turner
2015-08-14 20:27         ` Junio C Hamano
2015-08-14 20:54           ` David Turner
2015-08-15 18:20         ` Michael Haggerty
2015-08-15 18:12       ` Michael Haggerty
2015-08-17 15:55         ` Junio C Hamano [this message]
2015-08-15  7:59   ` Duy Nguyen
2015-08-16  5:04     ` David Turner
2015-08-16 12:20       ` Duy Nguyen
2015-08-12 21:57 ` [PATCH v3 3/4] refs: make refs/worktree/* per-worktree David Turner
2015-08-13 17:15   ` Eric Sunshine
2015-08-13 17:41     ` David Turner
2015-08-13 20:16       ` Michael Haggerty
2015-08-13 20:32         ` David Turner
2015-08-14  8:18           ` Michael Haggerty
2015-08-14 17:10             ` Junio C Hamano
2015-08-15  8:04   ` Duy Nguyen
2015-08-12 21:57 ` [PATCH v3 4/4] bisect: make bisection refs per-worktree David Turner
2015-08-15  7:44 ` [PATCH v3 1/4] refs: clean up common_list Duy Nguyen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqegj1gb9h.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox$(echo .)com \
    --cc=chriscool@tuxfamily$(echo .)org \
    --cc=dturner@twopensource$(echo .)com \
    --cc=git@vger$(echo .)kernel.org \
    --cc=mhagger@alum$(echo .)mit.edu \
    --cc=pclouds@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox