{"thread":{"id":"66181","subject":"Me commit message itself should describe your changes.","startedAt":"2026-08-16T09:12:08Z","lastAt":"2026-08-16T09:12:08Z","messageCount":1,"participants":["kapicharly@icloud.com"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"550672","messageId":"C1A89095-0F09-4BE1-9DE9-F3D8F96CBF5B@icloud.com","threadId":"66181","inReplyTo":null,"subject":"Me commit message itself should describe your changes.","fromName":"","fromEmail":"kapicharly@icloud.com","sentAt":"2026-08-16T09:11:53Z","receivedAt":"2026-08-16T09:12:08Z","isPatch":false,"body":"NOTE: The configuration options in `bitmapPseudoMerge.*` are considered\nEXPERIMENTAL and may be subject to change or be removed entirely in the\nfuture. For more information about the pseudo-merge bitmap feature, see\nthe \"Pseudo-merge bitmaps\" section of linkgit:gitpacking[7].\n\nbitmapPseudoMerge.<name>.pattern::\n\tRegular expression used to match reference names. Commits\n\tpointed to by references matching this pattern (and meeting\n\tthe below criteria, like `bitmapPseudoMerge.<name>.sampleRate`\n\tand `bitmapPseudoMerge.<name>.threshold`) will be considered\n\tfor inclusion in a pseudo-merge bitmap.\n+\nCommits are grouped into pseudo-merge groups based on whether or not\nany reference(s) that point at a given commit match the pattern, which\nis an extended regular expression.\n+\nWithin a pseudo-merge group, commits may be further grouped into\nsub-groups based on the capture groups in the pattern. These\nsub-groupings are formed from the regular expressions by concatenating\nany capture groups from the regular expression, with a '-' dash in\nbetween.\n+\nFor example, if the pattern is `refs/tags/`, then all tags (provided\nthey meet the below criteria) will be considered candidates for the\nsame pseudo-merge group. However, if the pattern is instead\n`refs/remotes/([0-9])+/tags/`, then tags from different remotes will\nbe grouped into separate pseudo-merge groups, based on the remote\nnumber.\n\nbitmapPseudoMerge.<name>.decay::\n\tDetermines the rate at which consecutive pseudo-merge bitmap\n\tgroups decrease in size. Must be non-negative. This parameter\n\tcan be thought of as `k` in the function `f(n) = C * n^-k`,\n\twhere `f(n)` is the size of the `n`th group.\n+\nSetting the decay rate equal to `0` will cause all groups to be the\nsame size. Setting the decay rate equal to `1` will cause the `n`th\ngroup to be `1/n` the size of the initial group.  Higher values of the\ndecay rate cause consecutive groups to shrink at an increasing rate.\nThe default is `1`.\n+\nIf all groups are the same size, it is possible that groups containing\nnewer commits will be able to be used less often than earlier groups,\nsince it is more likely that the references pointing at newer commits\nwill be updated more often than a reference pointing at an old commit.\n\nbitmapPseudoMerge.<name>.sampleRate::\n\tDetermines the proportion of non-bitmapped commits (among\n\treference tips) which are selected for inclusion in an\n\tunstable pseudo-merge bitmap. Must be greater than `0` and\n\tless than or equal to `1`. The default is `1`.\n\nbitmapPseudoMerge.<name>.threshold::\n\tDetermines the minimum age of non-bitmapped commits (among\n\treference tips, as above) which are candidates for inclusion\n\tin an unstable pseudo-merge bitmap. The default is\n\t`1.week.ago`.\n\nbitmapPseudoMerge.<name>.maxMerges::\n\tDetermines the maximum number of pseudo-merge commits among\n\twhich commits may be distributed.\n+\nFor pseudo-merge groups whose pattern does not contain any capture\ngroups, this setting is applied for all commits matching the regular\nexpression. For patterns that have one or more capture groups, this\nsetting is applied for each distinct capture group.\n+\nFor example, if your capture group is `refs/tags/`, then this setting\nwill distribute all tags into a maximum of `maxMerges` pseudo-merge\ncommits. However, if your capture group is, say,\n`refs/remotes/([0-9]+)/tags/`, then this setting will be applied to\neach remote's set of tags individually.\n+\nMust be non-negative. The default value is 64.\n\nbitmapPseudoMerge.<name>.stableThreshold::\n\tDetermines the minimum age of commits (among reference tips,\n\tas above, however stable commits are still considered\n\tcandidates even when they have been covered by a bitmap) which\n\tare candidates for a stable a pseudo-merge bitmap. The default\n\tis `1.month.ago`.\n+\nSetting this threshold to a smaller value (e.g., 1.week.ago) will cause\nmore stable groups to be generated (which impose a one-time generation\ncost) but those groups will likely become stale over time. Using a\nlarger value incurs the opposite penalty (fewer stable groups which are\nmore useful).\n\nbitmapPseudoMerge.<name>.stableSize::\n\tDetermines the size (in number of commits) of a stable\n\tpsuedo-merge bitmap. The default is `512`.\n"}]}