{"thread":{"id":"24869","subject":"Storing notes refs outside of refs/","startedAt":"2010-08-26T15:02:09Z","lastAt":"2010-08-26T19:20:48Z","messageCount":8,"participants":["Joshua Jensen","Junio C Hamano","Tomas Carnecky","Sverre Rabbelier"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"149065","messageId":"4C7681F1.3070205@workspacewhiz.com","threadId":"24869","inReplyTo":null,"subject":"Storing notes refs outside of refs/","fromName":"Joshua Jensen","fromEmail":"jjensen@workspacewhiz.com","sentAt":"2010-08-26T15:02:09Z","receivedAt":"2010-08-26T15:02:09Z","isPatch":false,"sender":{"key":"jjensen@workspacewhiz.com","avatar":"https://avatars.githubusercontent.com/u/111687?v=4"},"body":"  Every push to our server creates a note at .git/refs/notes/p4notes \nwith the equivalent Perforce changelist number, so Git-controlled code \nand Perforce-controlled content can stay in sync.\n\ngitk --all and Git Extensions (out of box) show all entries in the \n.git/refs/.  The p4notes entries are intermixed with the regular branch \ncontent.  This creates a HORRID visual mess.\n\nI tried manually moving .git/refs/notes/p4notes to .git/p4/p4notes.\n\n\"git log --show-notes=p4/p4notes\" fails, but assigning \ncore.notesDisplayRef=p4/p4notes succeeds.\n\nThe best part is, the refs/* namespace is no longer cluttered with junk!\n\nHowever, \"git push origin p4/p4notes:p4/p4notes\" fails with the error: \nUnable to push to unqualified destination: p4/p4notes.  The destination \nrefspec neither matches an existing ref on the remote nor begins with \nrefs/, and we are unable to guess a prefix based on the source ref.\n\nIs there a way to make the \"git push\" work?\n\nThanks!\n\nJosh\n"},{"id":"149070","messageId":"7vy6btl2yo.fsf@alter.siamese.dyndns.org","threadId":"24869","inReplyTo":"4C7681F1.3070205@workspacewhiz.com","subject":"Re: Storing notes refs outside of refs/","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-08-26T17:05:03Z","receivedAt":"2010-08-26T17:05:03Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Joshua Jensen <jjensen@workspacewhiz.com> writes:\n\n> I tried manually moving .git/refs/notes/p4notes to .git/p4/p4notes.\n\nBad idea.  Your notes no longer are protected from fsck and prune.\n\nDon't do it.\n"},{"id":"149076","messageId":"4C76B186.5080809@workspacewhiz.com","threadId":"24869","inReplyTo":"7vy6btl2yo.fsf@alter.siamese.dyndns.org","subject":"Re: Storing notes refs outside of refs/","fromName":"Joshua Jensen","fromEmail":"jjensen@workspacewhiz.com","sentAt":"2010-08-26T18:25:10Z","receivedAt":"2010-08-26T18:25:10Z","isPatch":false,"sender":{"key":"jjensen@workspacewhiz.com","avatar":"https://avatars.githubusercontent.com/u/111687?v=4"},"body":"  ----- Original Message -----\nFrom: Junio C Hamano\nDate: 8/26/2010 11:05 AM\n> Joshua Jensen<jjensen@workspacewhiz.com>  writes:\n>> I tried manually moving .git/refs/notes/p4notes to .git/p4/p4notes.\n> Bad idea.  Your notes no longer are protected from fsck and prune.\n>\n> Don't do it.\nAnd had I thought for longer than 1 minute about it, I would have \nrealized that.\n\nOkay then...\n\ngitk --all --not --glob=refs/notes/*\n\ndoes not work.  Is there a way to make it work?  I think, from another \nconversation asking a different (but related) question, the answer is no.\n\nJosh\n"},{"id":"149077","messageId":"4C76B6CF.8040808@dbservice.com","threadId":"24869","inReplyTo":"7vy6btl2yo.fsf@alter.siamese.dyndns.org","subject":"Re: Storing notes refs outside of refs/","fromName":"Tomas Carnecky","fromEmail":"tom@dbservice.com","sentAt":"2010-08-26T18:47:43Z","receivedAt":"2010-08-26T18:47:43Z","isPatch":false,"sender":{"key":"tom@dbservice.com","avatar":"https://gravatar.com/avatar/900a300bdd1a8bbe086008ad78210bbee2ad2803b7d50a5cba04c1e9404bd6d2?d=mp&s=160"},"body":"On 8/26/10 7:05 PM, Junio C Hamano wrote:\n> Joshua Jensen <jjensen@workspacewhiz.com> writes:\n> \n>> I tried manually moving .git/refs/notes/p4notes to .git/p4/p4notes.\n> \n> Bad idea.  Your notes no longer are protected from fsck and prune.\n\nHm, so storing no longer needed branches outside of the refs/heads\nnamespace (so that they don't show up in git branch) is a bad idea? This\nsuggestion was made in #git today or yesterday and I'd like to know if I\nshould advise people against doing that.\n\ntom\n"},{"id":"149078","messageId":"AANLkTim=P6GwnhuaJrixCZB_USD0NrKT0nN4t6XyEY+6@mail.gmail.com","threadId":"24869","inReplyTo":"4C76B6CF.8040808@dbservice.com","subject":"Re: Storing notes refs outside of refs/","fromName":"Sverre Rabbelier","fromEmail":"srabbelier@gmail.com","sentAt":"2010-08-26T18:51:56Z","receivedAt":"2010-08-26T18:51:56Z","isPatch":false,"sender":{"key":"srabbelier@gmail.com","avatar":"https://avatars.githubusercontent.com/u/3098?v=4"},"body":"Heya,\n\nOn Thu, Aug 26, 2010 at 13:47, Tomas Carnecky <tom@dbservice.com> wrote:\n> Hm, so storing no longer needed branches outside of the refs/heads\n> namespace (so that they don't show up in git branch) is a bad idea?\n\nYou can store them outside refs/heads just fine, as long as they're\nsomewhere under refs. For example, refs/attic/ would be perfectly\nsafe.\n\n-- \nCheers,\n\nSverre Rabbelier\n"},{"id":"149079","messageId":"7vlj7tkxvn.fsf@alter.siamese.dyndns.org","threadId":"24869","inReplyTo":"4C76B186.5080809@workspacewhiz.com","subject":"Re: Storing notes refs outside of refs/","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-08-26T18:54:52Z","receivedAt":"2010-08-26T18:54:52Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Joshua Jensen <jjensen@workspacewhiz.com> writes:\n\n> gitk --all --not --glob=refs/notes/*\n>\n> does not work.\n\nI don't think --not there is a good idea because \"--not\" in rev-list\nparameter means \"not reachable from the following commits\".\n\nIt may be useful if you made \"--all --glob=!refs/notes/*\" to work,\nthough.  I could picture myself buying such a change.\n\nOr just use \"--branches --tags\" instead, perhaps?\n"},{"id":"149081","messageId":"4C76BBEB.3040700@dbservice.com","threadId":"24869","inReplyTo":"AANLkTim=P6GwnhuaJrixCZB_USD0NrKT0nN4t6XyEY+6@mail.gmail.com","subject":"Re: Storing notes refs outside of refs/","fromName":"Tomas Carnecky","fromEmail":"tom@dbservice.com","sentAt":"2010-08-26T19:09:31Z","receivedAt":"2010-08-26T19:09:31Z","isPatch":false,"sender":{"key":"tom@dbservice.com","avatar":"https://gravatar.com/avatar/900a300bdd1a8bbe086008ad78210bbee2ad2803b7d50a5cba04c1e9404bd6d2?d=mp&s=160"},"body":"On 8/26/10 8:51 PM, Sverre Rabbelier wrote:\n> Heya,\n> \n> On Thu, Aug 26, 2010 at 13:47, Tomas Carnecky <tom@dbservice.com> wrote:\n>> Hm, so storing no longer needed branches outside of the refs/heads\n>> namespace (so that they don't show up in git branch) is a bad idea?\n> \n> You can store them outside refs/heads just fine, as long as they're\n> somewhere under refs. For example, refs/attic/ would be perfectly\n> safe.\n\nAh, I missed that Joshua wants to put them outside of .git/refs\n(.git/p4). Slight but important difference :)\n\ntom\n"},{"id":"149082","messageId":"4C76BE90.6040902@workspacewhiz.com","threadId":"24869","inReplyTo":"7vlj7tkxvn.fsf@alter.siamese.dyndns.org","subject":"Re: Storing notes refs outside of refs/","fromName":"Joshua Jensen","fromEmail":"jjensen@workspacewhiz.com","sentAt":"2010-08-26T19:20:48Z","receivedAt":"2010-08-26T19:20:48Z","isPatch":false,"sender":{"key":"jjensen@workspacewhiz.com","avatar":"https://avatars.githubusercontent.com/u/111687?v=4"},"body":"  ----- Original Message -----\nFrom: Junio C Hamano\nDate: 8/26/2010 12:54 PM\n> Joshua Jensen<jjensen@workspacewhiz.com>  writes\n>> gitk --all --not --glob=refs/notes/*\n>>\n>> does not work.\n> I don't think --not there is a good idea because \"--not\" in rev-list\n> parameter means \"not reachable from the following commits\".\nOkay.  I've not used it before.\n> It may be useful if you made \"--all --glob=!refs/notes/*\" to work,\n> though.  I could picture myself buying such a change.\n>\n> Or just use \"--branches --tags\" instead, perhaps?\ngitk --branches --remotes --tags is long to type.  (Let's ignore git \naliases for the moment.)\n\nThe deal is, refs/notes/ showing in git log --all serves no purpose, in \nmy opinion.  If it does for somebody else, I'd love to hear.\n\nWhat if there was a configuration setting applied to 'git log --all' as \na filter for refs I never want to see in the --all view?\n\ngit config --add core.logfilter refs/notes/*\ngit config --add core.logfilter refs/game-p4/*\n\nI also like the negated --glob syntax you showed above.\n\nAnother possibly useful idea is an extra 'git log' parameter --brt (for \n--branches, --remotes, --tags).\n\nThoughts?  I'll see if I can find some time to work on something once I \nhave a bit of direction.\n\nJosh\n"}]}