Re: [PATCH] notes: allow merging from arbitrary references
From: Johan Herland <hidden>
Date: 2016-06-15 23:07:15
On Fri, Nov 13, 2015 at 5:34 PM, Jacob Keller [off-list ref] wrote:
From: Jacob Keller <redacted> Create a new expansion function, expand_loose_notes_ref which will expand any ref using get_sha1, but falls back to expand_notes_ref if this fails. The contents of the strbuf will be either the hex string of the sha1, or the expanded notes ref. It is expected to be re-expanded using get_sha1 inside the notes merge machinery, and there is no real error checking provided at this layer. Since we now support merging from non-notes refs, remove the test case associated with that behavior. Add a test case for merging from a non-notes ref. Signed-off-by: Jacob Keller <redacted> --- I do not remember what version this was since it has been an age ago that I sent the previous code. This is mostly just a rebase onto current next. I believe I have covered everything previous reviewers noted.
Looks good to me.
I'm interested in whether this is the right direction, as my longterm goal is to be able to push/pull notes to a specific namespace (probably refs/remote-notes/*, since actually modifying to use refs/remotes/notes/* is difficult to send to users, and remote-notes makes the most useful sense). The first part of this is allowing merge to come from an arbitrary reference, as currently it is not really possible to merge from refs/remote-notes as we'd need it to be.
Yes, I agree that merging from refs outside refs/notes/ should become possible. A related topic that has been discussed (although I cannot remember if any conclusion was reached) is whether to allow more notes operations - specifically _read-only_ operations - on notes trees outside refs/notes/. I believe this should also become possible, although I haven't thoroughly examined all implications. ...Johan -- Johan Herland, [off-list ref] www.herland.net