{"thread":{"id":"8090","subject":"-mm git tree","startedAt":"2007-05-11T23:05:59Z","lastAt":"2007-05-11T23:05:59Z","messageCount":1,"participants":["J. Bruce Fields"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"41870","messageId":"20070511230559.GA29981@fieldses.org","threadId":"8090","inReplyTo":null,"subject":"-mm git tree","fromName":"J. Bruce Fields","fromEmail":"bfields@fieldses.org","sentAt":"2007-05-11T23:05:59Z","receivedAt":"2007-05-11T23:05:59Z","isPatch":false,"sender":{"key":"bfields@citi.umich.edu","avatar":null},"body":"The git tree at\n\n\tgit://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git\n\ncould be set up in a simpler way:\n\n$ git ls-remote git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git\nfc4b5be9e651d3e71b54541e0315fc82211b42b5\trefs/heads/option_export\n59a1fe35614c3c937a4e8cb6e4a45f1d05544d9d\trefs/heads/v2.6.13-mm1\ne3602088f81f66655ec6c62320d5c56839ffc02b\trefs/heads/v2.6.13-mm2\n...\n05230bd16821e2ec80321d72e97e7a2b1a07c6f2\trefs/tags/master\n...\n5e1302f173f63c5c57c5de8b44152c30ae2a72c4\trefs/tags/v2.6.13-mm1\n59a1fe35614c3c937a4e8cb6e4a45f1d05544d9d\trefs/tags/v2.6.13-mm1^{}\na06c5a7b36cfb30345a9476cbaff02955483c4ca\trefs/tags/v2.6.13-mm2\ne3602088f81f66655ec6c62320d5c56839ffc02b\trefs/tags/v2.6.13-mm2^{}\n...\n\nWould it be possible to remove the branches that exist for each\nindividual version, and to change the \"master\" tag to a branch?\n\nSince git gives tag names priority over head names, fetching the above\ntag makes \"master\" refer to it instead of any local branch named\n\"master\".\n\n(I get particularly bizarre behavior with current git; after:\n\n\tgit remote add mm git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git\n\tgit fetch mm\n\nwhen I check out \"master\", it sets HEAD to refs/heads/master, but the\nindex and working tree to refs/tags/master.)\n\nI think it may have been set up this way with the idea that a branch\nshould only ever move \"forward\" in history, whereas tags could move\naround freely.\n\nBut that's not really right--for something like -mm that's continually\nrewritten and rebased, it makes sense to have a \"master\" branch that\nskips around.  The default git-remote setup on recent git is prepared to\ndeal with this.\n\nAnd having a repository with 101 branches and counting, none of which\nevery change, is awkward--if nothing else it makes the output of\n\"git-branch -r\" a little hard to read.\n\n--b.\n"}]}