{"thread":{"id":"6974","subject":"Isn't \"dangling\" a misnomer?","startedAt":"2007-02-26T16:35:50Z","lastAt":"2007-03-04T21:27:36Z","messageCount":7,"participants":["Mike Coleman","Johannes Schindelin","Junio C Hamano","Linus Torvalds","Yasushi SHOJI","Josef Sipek"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"35507","messageId":"3c6c07c20702260835v4865ace1u18a20f6b1d0030b5@mail.gmail.com","threadId":"6974","inReplyTo":null,"subject":"Isn't \"dangling\" a misnomer?","fromName":"Mike Coleman","fromEmail":"tutufan@gmail.com","sentAt":"2007-02-26T16:35:50Z","receivedAt":"2007-02-26T16:35:50Z","isPatch":false,"sender":{"key":"tutufan@gmail.com","avatar":null},"body":"I've been reading and rereading the git documentation and tripping\nslightly over the word \"dangling\", as in \"dangling object\".  In\ntraditional use, one might talk of a dangling pointer A, where A\npoints to B and B is destroyed/invalidated/etc.  As a literal example,\nA might be a machine address like 0x8808FEFE, which points to an area\nof memory that once had a particular meaning, but now does not,\nleaving the pointer \"dangling\".\n\nThis way the git docs use this term seems to be the other way\naround---the object is still there and valid, but there are no\npointers to it.  In order for dangling to be going on, it seems like\nyou'd have to have a SHA1 hash for an object that is no longer in the\nrepository.  (If there's been previous discussion of this, I couldn't\nfind it.)\n\nWhat about an alternative term like \"orphaned\" or \"unreferenced\"?  The\nformer is a bit more suggestive, but unfortunately might be confusing\nsince the terms like ancestors, parents, etc., are already being used\nto talk about commit trees, which really is an orthogonal topic.  The\nlatter term seems like it would work, though it does sound a bit\nsterile.\n\nMike\n"},{"id":"35510","messageId":"Pine.LNX.4.63.0702261801010.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6974","inReplyTo":"3c6c07c20702260835v4865ace1u18a20f6b1d0030b5@mail.gmail.com","subject":"Re: Isn't \"dangling\" a misnomer?","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-26T17:02:05Z","receivedAt":"2007-02-26T17:02:05Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Mon, 26 Feb 2007, Mike Coleman wrote:\n\n> I've been reading and rereading the git documentation and tripping \n> slightly over the word \"dangling\", as in \"dangling object\".  In \n> traditional use, one might talk of a dangling pointer A, where A points \n> to B and B is destroyed/invalidated/etc.  As a literal example, A might \n> be a machine address like 0x8808FEFE, which points to an area of memory \n> that once had a particular meaning, but now does not, leaving the \n> pointer \"dangling\".\n\nThink of the history as a large tree with branches. If a branch is \ndangling, it is about to be pruned.\n\nCiao,\nDscho\n"},{"id":"35539","messageId":"7virdolm8u.fsf@assigned-by-dhcp.cox.net","threadId":"6974","inReplyTo":"3c6c07c20702260835v4865ace1u18a20f6b1d0030b5@mail.gmail.com","subject":"Re: Isn't \"dangling\" a misnomer?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2007-02-26T20:03:45Z","receivedAt":"2007-02-26T20:03:45Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Mike Coleman\" <tutufan@gmail.com> writes:\n\n> What about an alternative term like \"orphaned\" or \"unreferenced\"?  The\n> former is a bit more suggestive, but unfortunately might be confusing\n> since the terms like ancestors, parents, etc., are already being used\n> to talk about commit trees, which really is an orthogonal topic.  The\n> latter term seems like it would work, though it does sound a bit\n> sterile.\n\nWe seem to use the word \"unreachable\" to refer to them.\nE.g. fsck and prune do \"reachability analysis\".\n"},{"id":"35542","messageId":"Pine.LNX.4.64.0702261216380.12485@woody.linux-foundation.org","threadId":"6974","inReplyTo":"7virdolm8u.fsf@assigned-by-dhcp.cox.net","subject":"Re: Isn't \"dangling\" a misnomer?","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2007-02-26T20:19:31Z","receivedAt":"2007-02-26T20:19:31Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Mon, 26 Feb 2007, Junio C Hamano wrote:\n> \n> We seem to use the word \"unreachable\" to refer to them.\n> E.g. fsck and prune do \"reachability analysis\".\n\nWell, everything that cannot be reached is \"unreachable\", but not \neverything is \"dangling\".\n\nBeing \"dangling\" is a very special case of unreachability: it's not \nreachable from _anything_ - including other unreachable objects.\n\nSo\n\n\tgit fsck\n\nwill report about dangling objects, but\n\n\tgit fsck --unreachable\n\nwill report about unreachable objects, and the result is *not* the same \n(dangling objects will usually be a very small subset of the unreachable \nones, since in many cases *most* unreachable objects end up being pointed \nto by other unreachable objects, and are thus not the dangling part).\n\nMaybe we could call the dangling objects \"unreachable tips\" or something. \nBecause dangling => unreachable, but unreachable !=> dangling.\n\n\t\tLinus\n"},{"id":"36241","messageId":"87649g991s.wl@mail2.atmark-techno.com","threadId":"6974","inReplyTo":"Pine.LNX.4.64.0702261216380.12485@woody.linux-foundation.org","subject":"Add dangling object and unreachable object in glossary.txt","fromName":"Yasushi SHOJI","fromEmail":"yashi@atmark-techno.com","sentAt":"2007-03-04T18:07:43Z","receivedAt":"2007-03-04T18:07:43Z","isPatch":false,"sender":{"key":"yashi@atmark-techno.com","avatar":"https://gravatar.com/avatar/4817e8703ac4379935834d87453faa9d0c94b9dc19d83fcc54c67875eb133e59?d=mp&s=160"},"body":"---\nWould it be worth to add these two entery in\nDocumentation/glossary.txt?\n\nEnglish isn't my mother tang, so please check it.\n-- \n         yashi\n\n\n\ndiff --git a/Documentation/glossary.txt b/Documentation/glossary.txt\nindex d20eb62..ee48009 100644\n--- a/Documentation/glossary.txt\n+++ b/Documentation/glossary.txt\n@@ -73,6 +73,11 @@ DAG::\n \tobjects is acyclic (there is no chain which begins and ends with the\n \tsame object).\n \n+dangling object::\n+\tAn object which is a very special case of unreachable object;\n+\tit is not reachable from anything, including unreachable\n+\tobjects.\n+\n dircache::\n \tYou are *waaaaay* behind.\n \n@@ -350,6 +355,9 @@ tag::\n unmerged index::\n \tAn index which contains unmerged index entries.\n \n+unreachable object::\n+\tAn object which is not reachable.\n+\n working tree::\n \tThe set of files and directories currently being worked on,\n \ti.e. you can work in your working tree without using git at all.\n"},{"id":"36245","messageId":"20070304190322.GA3644@filer.fsl.cs.sunysb.edu","threadId":"6974","inReplyTo":"87649g991s.wl@mail2.atmark-techno.com","subject":"Re: Add dangling object and unreachable object in glossary.txt","fromName":"Josef Sipek","fromEmail":"jsipek@fsl.cs.sunysb.edu","sentAt":"2007-03-04T19:03:22Z","receivedAt":"2007-03-04T19:03:22Z","isPatch":false,"sender":{"key":"jsipek@fsl.cs.sunysb.edu","avatar":null},"body":"On Mon, Mar 05, 2007 at 03:07:43AM +0900, Yasushi SHOJI wrote:\n> ---\n> Would it be worth to add these two entery in\n> Documentation/glossary.txt?\n> \n> English isn't my mother tang, so please check it.\n> -- \n>          yashi\n> \n> \n> \n> diff --git a/Documentation/glossary.txt b/Documentation/glossary.txt\n> index d20eb62..ee48009 100644\n> --- a/Documentation/glossary.txt\n> +++ b/Documentation/glossary.txt\n> @@ -73,6 +73,11 @@ DAG::\n>  \tobjects is acyclic (there is no chain which begins and ends with the\n>  \tsame object).\n>  \n> +dangling object::\n> +\tAn object which is a very special case of unreachable object;\n> +\tit is not reachable from anything, including unreachable\n> +\tobjects.\n\n\"...including other unreachable objects.\" ?\n\nJosef \"Jeff\" Sipek.\n\n-- \nDon't drink and derive. Alcohol and algebra don't mix.\n"},{"id":"36248","messageId":"7vvehg4s3b.fsf@assigned-by-dhcp.cox.net","threadId":"6974","inReplyTo":"87649g991s.wl@mail2.atmark-techno.com","subject":"Re: Add dangling object and unreachable object in glossary.txt","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2007-03-04T21:27:36Z","receivedAt":"2007-03-04T21:27:36Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Yasushi SHOJI <yashi@atmark-techno.com> writes:\n\n> @@ -350,6 +355,9 @@ tag::\n>  unmerged index::\n>  \tAn index which contains unmerged index entries.\n>  \n> +unreachable object::\n> +\tAn object which is not reachable.\n> +\n\n... from any ref.\n"}]}