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

Re: [PATCH v2 0/8] Fix atomicity and avoid fd exhaustion in ref transactions

From
Christian Couder <christian.couder@gmail.com>
Date
May 12, 2015, 13:26 UTC
Message-ID
<CAP8UFD2QcbTPmhpjbgE1g6PD5J1xWBv8bpDggH0+niXO-w3UwA@mail.gmail.com>
In-Reply-To
<CAGZ79kbkfp-nZUqK3nO7hmdL4C+RaTREBTHbkjUtVxFgOeozOQ@mail.gmail.com>
On Mon, May 11, 2015 at 7:10 PM, Stefan Beller <sbeller@google.com> wrote:
Show 13 quoted lines
> On Sun, May 10, 2015 at 11:52 PM, Michael Haggerty <mhagger@alum.mit.edu> wrote:
>> This is exactly the kind of case that "rebase with history" [1] was
>> meant to address. But given that our tooling doesn't support such
>> complicated histories very well, your plan sounds reasonable.
>
> As a side note to your blog post unrelated to the current series:
>
> I think the new proposed history for "rebase-by-merging-a-patch-at-a-time" also
> improves bisectability because you have less long running side branches
> (as compared to both in traditional rebase and traditional merge), but a finer
> meshed DAG where it is easier to split the commit range into half its size.
> When going back one step in history you have more merge nodes where
> bisect can decide how many commits to chop off of the new range.

Yeah, this was discussed at the Git Merge 2013 in Berlin, where Michael gave two presentations (one on the developer day and one on the user day) about git-imerge. We also discussed the idea of using a replace ref to be able to switch between different "views" of the merge, for example one view where you see only one commit for the whole merge/rebase with history, and one view where you see all the micro merge commits.

Best, Christian.

Previous: Stefan BellerNext: Stefan Beller
Message 15 of 16 in “Fix atomicity and avoid fd exhaustion in ref transactions”
  1. 0/8 Fix atomicity and avoid fd exhaustion in ref transactionsMichael Haggerty, May 10, 2015
  2. 1/8 update-ref: test handling large transactions properlyMichael Haggerty, May 10, 2015
  3. 2/8 t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZEMichael Haggerty, May 10, 2015
  4. Stefan BellerMay 11, 2015
  5. Junio C HamanoMay 12, 2015
  6. 3/8 write_ref_to_lockfile(): new function, extracted from write_ref_sha1()Michael Haggerty, May 10, 2015
  7. 4/8 commit_ref_update(): new function, extracted from write_ref_sha1()Michael Haggerty, May 10, 2015
  8. 5/8 rename_ref(): inline calls to write_ref_sha1() from this functionMichael Haggerty, May 10, 2015
  9. 6/8 ref_transaction_commit(): inline call to write_ref_sha1()Michael Haggerty, May 10, 2015
  10. 7/8 ref_transaction_commit(): remove the local flags variableMichael Haggerty, May 10, 2015
  11. 8/8 ref_transaction_commit(): fix atomicity and avoid fd exhaustionMichael Haggerty, May 10, 2015
  12. Junio C HamanoMay 11, 2015
  13. Michael HaggertyMay 11, 2015
  14. Stefan BellerMay 11, 2015
  15. Christian CouderMay 12, 2015
  16. Stefan BellerMay 11, 2015

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.