git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 3/5] setup_revisions: remember whether a ref was positive or not

From
Junio C Hamano <gitster@pobox.com>
Date
Aug 8, 2011, 23:39 UTC
Message-ID
<7vipq7tqux.fsf@alter.siamese.dyndns.org>
In-Reply-To
<CAGdFq_hO-MYC_kXZZhoqXhTRvVhCDfTT4EHPoYDyHjGtRiSB9g@mail.gmail.com>
Sverre Rabbelier <srabbelier@gmail.com> writes:
Show 5 quoted lines
> Ok, knowing that, I am somewhat more inclined to have a look at this.
> I'm still not sure that I know how to implement the design you
> described though. I mean, I understand the general concept, but I have
> no idea in what places it would need to hook in to make it work (ditto
> on how to fix the diff bug).

It is entirely possible, as Dscho hinted in his response, that your "flag" word may be sufficient to encode "where did this object (whether it is marked as uninteresting or interesting) come from? what did the user want to do with it?" information for all practical purposes, even though I doubt one bit would be sufficient. So how about ignoring "diff A...B" vs "diff ^C A B" in the meantime and see if your change to revision.c is applicable to the same issue in "git bundle" as a starter?

I would imagine that "diff A...B" vs "diff ^C A B" case would be solved by the former (^C is the common ancestor between A and B) add a flag COMMON_ANCESTOR to pending object array entry that holds ^C, SYMMETRIC_LEFT to the one with A and SYMMETRIC_RIGHT to the one with B, while the latter would stuff one SINGLE_NEGATIVE (^C), and two SINGLE_POSITIVE (A and B), and the caller would tell between the two, or something like that. And "bundle master^0..master" (and similarly your export stream) would note the RHS of the dot operator with SYMMETRIC_RIGHT so that "master", even though the commit object gets marked as uninteresting at the end, can be recovered to be of interest to the end user.

I am not suggesting the exact flag word names above, but just trying to enumerate how many kinds would be needed). Your single-bit in the patch would be SYMMETRIC_RIGHT in the above ugly notation, but you can call it REF_INTERESTING or whatever.

Previous: Sverre RabbelierNext: Junio C Hamano
Message 20 of 29 in “fast-export: prepare for remote helpers awesomeness”
  1. 0/5 fast-export: prepare for remote helpers awesomenessSverre Rabbelier, Jul 24, 2011
  2. 1/5 t9350: point out that refs are not updated correctlySverre Rabbelier, Jul 24, 2011
  3. 2/5 fast-export: do not refer to non-existing marksSverre Rabbelier, Jul 24, 2011
  4. 3/5 setup_revisions: remember whether a ref was positive or notSverre Rabbelier, Jul 24, 2011
  5. Junio C HamanoJul 24, 2011
  6. Junio C HamanoJul 24, 2011
  7. Sverre RabbelierAug 3, 2011
  8. Junio C HamanoAug 3, 2011
  9. Johannes SchindelinAug 8, 2011
  10. Junio C HamanoAug 8, 2011
  11. Sverre RabbelierAug 8, 2011
  12. Junio C HamanoAug 8, 2011
  13. Sverre RabbelierAug 8, 2011
  14. Junio C HamanoAug 8, 2011
  15. Sverre RabbelierAug 8, 2011
  16. Junio C HamanoAug 8, 2011
  17. Sverre RabbelierAug 8, 2011
  18. Junio C HamanoAug 8, 2011
  19. Sverre RabbelierAug 8, 2011
  20. Junio C HamanoAug 8, 2011
  21. Junio C HamanoAug 8, 2011
  22. Sverre RabbelierAug 8, 2011
  23. Junio C HamanoAug 8, 2011
  24. Sverre RabbelierAug 8, 2011
  25. Johannes SchindelinJul 26, 2011
  26. 4/5 fast-export: do not export negative refsSverre Rabbelier, Jul 24, 2011
  27. Junio C HamanoJul 24, 2011
  28. Johannes SchindelinJul 26, 2011
  29. 5/5 setup_revisions: remember whether a ref was positive or notSverre Rabbelier, Jul 24, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.