On 1/2/2020 4:49 PM, Junio C Hamano wrote: > "Derrick Stolee via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > >> This problem is due to two failures: >> >> 1. It is unclear that we can add the flag COMMIT_GRAPH_WRITE_SPLIT >> with a NULL split_opts. >> 2. If we have a non-NULL split_opts, then we override the default >> values even if a zero value is given. >> >> Correct both of these issues. First, do not override size_mult when >> the options provide a zero value. Second, stop creating a split_opts >> in the fetch builtin. > > OK, so there is the hardcoded default 2 in the code, and split_opts > structure *can* override it, but 0 in the field of the structure is > meant to signal "no, I do not have any value to override the > default", not "I do want to set the multiple to 0"? Correct. The multiple 0 makes it so we never merge layers of the chain, and this was happening accidentally. A caller could still accomplish this by passing -1, but that is not recommended. -Stolee