From: Martin Fick <email@example.com> To: Michael Haggerty <firstname.lastname@example.org> Cc: Shawn Pearce <email@example.com>, git <firstname.lastname@example.org>, David Turner <email@example.com>, Jeff King <firstname.lastname@example.org> Subject: Re: RefTree: Alternate ref backend Date: Tue, 22 Dec 2015 13:56:50 -0700 [thread overview] Message-ID: <6263203.WlZuyGWxlh@mfick1-lnx> (raw) In-Reply-To: <4689734.cEcQ2vR0aQ@mfick1-lnx> On Tuesday, December 22, 2015 06:17:28 PM you wrote: > On Tue, Dec 22, 2015 at 7:41 AM, Michael Haggerty <email@example.com> wrote: > > At a deeper level, the "refs/" part of reference names is > actually pretty useless in general. I suppose it > originated in the practice of storing loose references > under "refs/" to keep them separate from other metadata > in $GIT_DIR. But really, aside from slightly helping > disambiguate references from paths in the command line, > what is it good for? Would we really be worse off if > references' full names were > > HEAD > heads/master > tags/v1.0.0 > remotes/origin/master (or remotes/origin/heads/master) I think this is a bit off, because HEAD != refs/HEAD so not quite useless. But, I agree that the whole refs notation has always bugged me, it is quirky. It makes it hard to disambiguate when something is meant to be absolute or not. What if we added a leading slash for absolute references? Then I could do something like: /HEAD /refs/heads/master /refs/tags/v1.0.0 /refs/remotes/origin/master I don't like that plumbing has to do a dance to guess at expansions, how many tools get it wrong (do it in different orders, miss some expansions...). With an absolute notation, plumbing could be built to require absolute notations, giving more predictable interpretations when called from tools. This is a long term idea, but it might make sense to consider it now just for the sake of storing refs, it would eliminate the need for the ".." notation for "refs/..HEAD". Now if we could only figure out a way to tell plumbing that something is a SHA, not a ref? :) -Martin -- The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
next prev parent reply other threads:[~2015-12-22 20:56 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-12-17 21:02 Shawn Pearce 2015-12-17 21:57 ` Junio C Hamano 2015-12-17 22:15 ` Shawn Pearce 2015-12-17 22:10 ` Jeff King 2015-12-17 22:28 ` Shawn Pearce 2015-12-18 1:36 ` Mike Hommey 2015-12-22 15:41 ` Michael Haggerty 2015-12-22 16:11 ` Shawn Pearce 2015-12-22 17:04 ` Dave Borowitz 2015-12-22 17:17 ` Michael Haggerty 2015-12-22 18:50 ` Shawn Pearce 2015-12-22 19:09 ` Junio C Hamano 2015-12-22 19:11 ` Shawn Pearce 2015-12-22 19:34 ` Junio C Hamano 2015-12-23 4:59 ` Michael Haggerty 2015-12-24 1:33 ` Junio C Hamano [not found] ` <4689734.cEcQ2vR0aQ@mfick1-lnx> 2015-12-22 20:56 ` Martin Fick [this message] 2015-12-22 21:23 ` Junio C Hamano
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 List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=6263203.WlZuyGWxlh@mfick1-lnx \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --subject='Re: RefTree: Alternate ref backend' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).