From: Junio C Hamano <firstname.lastname@example.org> To: Kenneth Lorber <email@example.com> Cc: firstname.lastname@example.org Subject: Re: [RFC PATCH 3/6] Add namespace collision avoidance guidelines file Date: Sun, 17 May 2020 08:31:00 -0700 Message-ID: <email@example.com> (raw) In-Reply-To: <firstname.lastname@example.org> (Kenneth Lorber's message of "Sat, 16 May 2020 22:13:41 -0400") Kenneth Lorber <email@example.com> writes: > From: Kenneth Lorber <firstname.lastname@example.org> > > Add a file of guidelines to prevent the namespace collisions > mentioned in git help config without any guidance. Collisions with whom are you worried about? Random $stuff the end users want to have the namespace that governs $stuff (where $stuff could be an environment variable, a file on the filesystem, refname in git, etc.)? Random $stuff third-party tools want to add? As far as git is concerned, all the files under $GIT_DIR are blackbox and off-limits from end users and third-party tools, so there is no collisions in "a file on the filesystem", but creating a ref may result in a creation of a file in $GIT_DIR/, and carving out a part of refs/* hierarchy for use by a third-party tool is a worthwhile goal. Just like "git bisect" uses refs/bisect/* for its own operation and wants to reserve the hierarchy from other tools and the end users, any third-party tool would want a similar carve-out. The same for configuration variables. HOWEVER I would rather not to see an arbitrary set of rules that are not battle-tested in the field added to our documentation. Instead, my preference is to add a document that describes what namespaces (e.g. environment variable, reference, configuration varable) third-party tools may want carving out for themselves to raise awareness of writers of such tools, and tell them to talk to us on the list, saying "I plan to write a tool that wants to reserve refs/frotz/ hierarchy for its own use---comments?", so that people can respond with "I know a tool that already uses that hierarchy, so you'd need to come up with a different one" to save hassles of having to rename before it happens. After gaining experience from such exchanges, we might come up a set of rules so that no collisions would be possible without any coordination, and then we could document those rules. I do not think that is plausible to happen, but that is OK.
next prev parent reply index Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-05-17 2:13 [RFC PATCH 0/6] various documentation bits Kenneth Lorber 2020-05-17 2:13 ` [RFC PATCH 1/6] Tell the glossary about core.hooksPath Kenneth Lorber 2020-05-17 18:33 ` Junio C Hamano 2020-05-18 22:06 ` Kenneth Lorber 2020-05-17 2:13 ` [RFC PATCH 2/6] Add bit on extending git to Hacking Git Kenneth Lorber 2020-05-17 18:34 ` Junio C Hamano 2020-05-18 22:10 ` Kenneth Lorber 2020-05-17 2:13 ` [RFC PATCH 3/6] Add namespace collision avoidance guidelines file Kenneth Lorber 2020-05-17 9:45 ` Abhishek Kumar 2020-05-18 15:51 ` Kenneth Lorber 2020-05-17 15:31 ` Junio C Hamano [this message] 2020-05-18 21:46 ` Kenneth Lorber 2020-05-17 2:13 ` [RFC PATCH 4/6] Include NAMESPACE COLLISIONS doc into gitrepository-layout.txt Kenneth Lorber 2020-05-18 0:26 ` Junio C Hamano 2020-05-18 23:54 ` Kenneth Lorber 2020-05-17 2:13 ` [RFC PATCH 5/6] Tell config.txt about NAMESPACE COLLISIONS Kenneth Lorber 2020-05-18 0:32 ` Junio C Hamano 2020-05-17 2:13 ` [RFC PATCH 6/6] Add NAMESPACE COLLISIONS reference to Hacking Git Kenneth Lorber 2020-05-17 7:42 ` [RFC PATCH 0/6] various documentation bits Abhishek Kumar 2020-05-17 18:39 ` Junio C Hamano 2020-05-18 23:44 ` Kenneth Lorber 2020-05-18 15:45 ` Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 " Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 1/6] doc: Tell the glossary about core.hooksPath Kenneth Lorber 2020-05-26 18:59 ` Junio C Hamano 2020-05-27 16:52 ` Kenneth Lorber 2020-05-27 17:18 ` Kenneth Lorber 2020-05-27 17:18 ` Junio C Hamano 2020-05-25 23:27 ` [RFC PATCH v2 2/6] doc: Add bit on extending git to Hacking Git Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 3/6] doc: Add namespace collision guidelines file Kenneth Lorber 2020-05-28 18:49 ` Junio C Hamano 2020-05-28 19:29 ` Junio C Hamano 2020-05-29 1:20 ` Junio C Hamano 2020-05-29 18:08 ` Junio C Hamano 2020-06-01 23:55 ` Kenneth Lorber 2020-06-01 18:38 ` Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 4/6] doc: Add collision doc to gitrepository-layout.txt Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 5/6] doc: Tell config.txt about namespace collisions Kenneth Lorber 2020-05-25 23:27 ` [RFC PATCH v2 6/6] doc: Add collision reference to Hacking Git Kenneth Lorber 2020-05-31 21:37 ` [RFC PATCH 0/2] update glossary hooks entry Kenneth Lorber 2020-05-31 21:37 ` [RFC PATCH 1/2] doc: Tell the glossary about core.hooksPath Kenneth Lorber 2020-05-31 21:37 ` [RFC PATCH 2/2] doc: remove dated info and refs to sample hooks Kenneth Lorber
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 \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ /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
Git Mailing List Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/git/0 git/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 git git/ https://lore.kernel.org/git \ email@example.com public-inbox-index git Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.git AGPL code for this site: git clone https://public-inbox.org/public-inbox.git