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

Re: [RFH] Merge driver

From
Fredrik Kuivinen <freku045@student.liu.se>
Date
Sep 12, 2005, 21:08 UTC
Message-ID
<20050912210813.GA6644@c165.ib.student.liu.se>
In-Reply-To
<7v3boen0rb.fsf_-_@assigned-by-dhcp.cox.net>
On Fri, Sep 09, 2005 at 12:44:40AM -0700, Junio C Hamano wrote:
...
> *1* Fredrik, I have been wondering if we can just say that lack
> of '-u' flag implies '-i'.  Is there a good reason that
> 'git-read-tree -m O A B' without '-u' should care if working
> tree is up to date for the paths involved?

No, I don't think so. But it would be nice if one could use '-i' together with '-u'.

The current git-merge-fredrik.py does not use '-i' together with '-u', but I plan to change that. Currently we assume that the index is uptodate when we start the merge. If the two branches have more than one common ancestor those ancestors are merged into a temporary tree, lets call it T, without touching the working directory.

The final steps of the merge are currently the following steps (lets say we want to merge A with B):

git-read-tree A git-update-cache --refresh git-read-tree -u -m T A B

We need the second step because otherwise git-read-tree will complain that the cache isn't uptodate. But we _know_ that the contents are uptodate, so the second step is unnecessary and just eats time. So, instead of doing the above we should be able to do:

git-read-tree A git-read-tree -u -i -m T A B

I have a patch which implements this and it _seems_ to work fine. Is it reasonable to things this way or have I missed something?

- Fredrik
Previous: Junio C HamanoNext: Junio C Hamano
Message 37 of 40 in “A new merge algorithm, take 3”
  1. 0/2 A new merge algorithm, take 3Fredrik Kuivinen, Sep 7, 2005
  2. 1/2 Add '-i' flag to read-tree to make it ignore whats in the working directory.Fredrik Kuivinen, Sep 7, 2005
  3. Unified merge driver pushed out to "master" branchJunio C Hamano, Sep 11, 2005
  4. Fredrik KuivinenSep 11, 2005
  5. Junio C HamanoSep 12, 2005
  6. Another merge test case from the kernel tree.Junio C Hamano, Sep 14, 2005
  7. Daniel BarkalowSep 14, 2005
  8. Junio C HamanoSep 14, 2005
  9. Fredrik KuivinenSep 14, 2005
  10. Junio C HamanoSep 14, 2005
  11. Yet another set of merge test cases from the kernel tree.Junio C Hamano, Sep 15, 2005
  12. Fredrik KuivinenSep 19, 2005
  13. Junio C HamanoSep 20, 2005
  14. Fredrik KuivinenSep 20, 2005
  15. 2/2 A new merge algorithmFredrik Kuivinen, Sep 7, 2005
  16. Daniel BarkalowSep 7, 2005
  17. Fredrik KuivinenSep 8, 2005
  18. Daniel BarkalowSep 8, 2005
  19. Fredrik KuivinenSep 8, 2005
  20. Daniel BarkalowSep 8, 2005
  21. Junio C HamanoSep 7, 2005
  22. Junio C HamanoSep 8, 2005
  23. A Large Angry SCMSep 8, 2005
  24. Chuck LeverSep 8, 2005
  25. Junio C HamanoSep 8, 2005
  26. Linus TorvaldsSep 8, 2005
  27. Junio C HamanoSep 8, 2005
  28. Chuck LeverSep 8, 2005
  29. Linus TorvaldsSep 8, 2005
  30. Chuck LeverSep 8, 2005
  31. Linus TorvaldsSep 8, 2005
  32. [RFH] Merge driverJunio C Hamano, Sep 9, 2005
  33. Daniel BarkalowSep 9, 2005
  34. Junio C HamanoSep 9, 2005
  35. Daniel BarkalowSep 9, 2005
  36. [RFH] Merge driverJunio C Hamano, Sep 11, 2005
  37. Fredrik KuivinenSep 12, 2005
  38. Junio C HamanoSep 12, 2005
  39. Fredrik KuivinenSep 13, 2005
  40. Junio C HamanoSep 13, 2005

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.