]> git.99rst.org Git - git.git/commit
b4: introduce configuration for the Git project
authorPatrick Steinhardt <redacted>
Mon, 15 Jun 2026 12:59:43 +0000 (14:59 +0200)
committerJunio C Hamano <redacted>
Mon, 15 Jun 2026 17:13:28 +0000 (10:13 -0700)
commit84b2ff7f2f708b8343d684ab57c72c1367de01e6
tree32f282a1576233655df4ace9b673f47e95807f54
parentefe4ac70647c62152c37f2f247404c9dfd494ed5
b4: introduce configuration for the Git project

In the preceding commit we have extended our documentation to recommend
b4 for sending patch series to the mailing list. Introduce configuration
so that it knows to honor preferences of the Git project by default. For
now, this configuration does two things:

  - It configures "send-same-thread = shallow", which tells b4 to always
    send subsequent versions of the same patch series as a reply to the
    cover letter of the first version.

  - It configures "prep-cover-template", which tells b4 to use a custom
    template for the cover letter. The most important change compared to
    the default template is that our custom template also includes a
    range-diff.

There's potentially more things that we may want to configure going
forward, like for example auto-configuration of folks to Cc on certain
patches. But these two tweaks feel like a good place to start.

Note that these values only serve as defaults, and users may want to
tweak those defaults based on their own preference. Luckily, users can
do that without having to touch `.b4-config` at all, as b4 allows them
to override values via Git configuration:

    ```
    $ git config set b4.prep-cover-template /does/not/exist
    $ b4 send --dry-run
    ERROR: prep-cover-template says to use x, but it does not exist
    ```

So this gives users an easy way to override our defaults without having
to touch ".b4-config", which would dirty the tree.

Signed-off-by: Patrick Steinhardt <redacted>
Signed-off-by: Junio C Hamano <redacted>
.b4-config [new file with mode: 0644]
.b4-cover-template [new file with mode: 0644]
git clone https://git.99rst.org/PROJECT