# A note from the maintainer

9 messages from 2024-03-20 to 2024-03-22. Participants: Junio C Hamano, Brian Lyles.
Thread: https://gitlist.dev/t/61163

## Junio C Hamano, 2024-03-20 16:07

Subject: A note from the maintainer
Message-ID: <xmqqr0g4hopl.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqqr0g4hopl.fsf%40gitster.g

```
I used to send this soon after each feature release, but somehow I
forgot for about a full year X-<.  Better late than never, I guess.

--- >8 ---
Welcome to the Git development community.

This message is written by the maintainer and talks about how Git
project is managed, and how you can work with it.

The current maintainer is Junio C Hamano <gitster@pobox.com>.  Spam
filters learned that legitimate messages come only from a very few
sender addresses that are known to be good to this address, and all
other messages are likely to be spam unless they are also sent to the
mailing list at the same time (i.e. "Reply-all" to the list message
would reach the mailbox, but "Reply" will likely be thrown into the
spam folder), so please do not send a message to this address unless
it is also sent to the mailing list as well.


* Mailing list and the community

The development is primarily done on the Git mailing list. Help
requests, feature proposals, bug reports and patches should be sent to
the list address <git@vger.kernel.org>.  You don't have to be
subscribed to send messages.  The convention on the list is to keep
everybody involved on Cc:, so it is unnecessary to say "Please Cc: me,
I am not subscribed".

As an anti-spam measure, the mailing list software rejects messages
that are not text/plain and drops them on the floor.  If you are a
GMail user, you'd want to make sure "Plain text mode" is checked.

Before sending patches, please read Documentation/SubmittingPatches
and Documentation/CodingGuidelines to familiarize yourself with the
project convention.

If you sent a patch and you did not hear any response from anybody for
several days, it could be that your patch was totally uninteresting,
but it also is possible that it was simply lost in the noise.  Please
do not hesitate to send a reminder message in such a case.  Messages
getting lost in the noise may be a sign that those who can evaluate
your patch don't have enough mental/time bandwidth to process them
right at the moment, and it often helps to wait until the list traffic
becomes calmer before sending such a reminder.

The list archive is available at a few public sites:

        https://lore.kernel.org/git/
        https://marc.info/?l=git
        https://www.spinics.net/lists/git/

For those who prefer to read it over NNTP:

	nntp://nntp.lore.kernel.org/org.kernel.vger.git
        nntp://news.public-inbox.org/inbox.comp.version-control.git

are available.

When you point at a message in a mailing list archive, using its
message ID is often the most robust (if not very friendly) way to do
so, like this:

	https://lore.kernel.org/git/Pine.LNX.4.58.0504150753440.7211@ppc970.osdl.org

Often these web interfaces accept the message ID with enclosing <>
stripped (like the above example to point at one of the most important
message in the Git list).

Some members of the development community can sometimes be found on
the #git and #git-devel IRC channels on Libera Chat.  Their logs are
available at:

        https://colabti.org/ircloggy/git/last
        https://colabti.org/ircloggy/git-devel/last

There is a volunteer-run newsletter to serve our community ("Git Rev
News" https://git.github.io/rev_news/).

Git is a member project of software freedom conservancy, a non-profit
organization (https://sfconservancy.org/).  To reach a committee of
liaisons to the conservancy, contact them at <git@sfconservancy.org>.

For our expectations on the behaviour of the community participants
towards each other, see CODE_OF_CONDUCT.md at the top level of the source
tree, or:

    https://github.com/git/git/blob/master/CODE_OF_CONDUCT.md


* Reporting bugs

When you think git does not behave as you expect, please do not stop
your bug report with just "git does not work".  "I used git in this
way, but it did not work" is not much better, neither is "I used git
in this way, and X happend, which is broken".  It often is that git is
correct to cause X happen in such a case, and it is your expectation
that is broken.  People would not know what other result Y you
expected to see instead of X, if you left it unsaid.

Please remember to always state

 - what you wanted to achieve;

 - what you did (the version of git and the command sequence to reproduce
   the behavior);

 - what you saw happen (X above);

 - what you expected to see (Y above); and

 - how the last two are different.

See https://www.chiark.greenend.org.uk/~sgtatham/bugs.html for further
hints.  Our `git bugreport` tool gives you a handy way you can use to
make sure you do not forget these points when filing a bug report.

If you think you found a security-sensitive issue and want to disclose
it to us without announcing it to wider public, please contact us at
our security mailing list <git-security@googlegroups.com>.  This is
a closed list that is limited to people who need to know early about
vulnerabilities, including:

  - people triaging and fixing reported vulnerabilities
  - people operating major git hosting sites with many users
  - people packaging and distributing git to large numbers of people

where these issues are discussed without risk of the information
leaking out before we're ready to make public announcements.


* Repositories and documentation.

My public git.git repositories are (mirrored) at:

  https://git.kernel.org/pub/scm/git/git.git/
  https://kernel.googlesource.com/pub/scm/git/git
  https://repo.or.cz/alt-git.git/
  https://github.com/git/git/
  https://gitlab.com/git-vcs/git/

This one shows not just the main integration branches, but also
individual topics broken out:

  https://github.com/gitster/git/

A few web interfaces are found at:

  https://git.kernel.org/pub/scm/git/git.git
  https://kernel.googlesource.com/pub/scm/git/git
  https://repo.or.cz/w/alt-git.git

Preformatted documentation from the tip of the "master" branch can be
found in:

  https://git.kernel.org/pub/scm/git/git-{htmldocs,manpages}.git/
  https://repo.or.cz/git-{htmldocs,manpages}.git/
  https://github.com/gitster/git-{htmldocs,manpages}.git/

The manual pages formatted in HTML for the tip of 'master' can be
viewed online at:

  https://git.github.io/htmldocs/git.html


* How various branches are used.

There are four "integration" branches in git.git repository that track
the source tree of git: "master", "maint", "next", and "seen".  They
however almost never get new commits made directly on them.  Instead,
a branch is forked from either "master" or "maint" for each "topic",
whether it is a new feature or a fix for a bug, and holds a set of
commits that belong to the same theme.  Such a "topic branch" is then
merged to these integration branches.

The "master" branch is meant to contain what are very well tested and
ready to be used in a production setting.  Every now and then, a
"feature release" is cut from the tip of this branch.  They used to be
named with three dotted decimal digits (e.g., "1.8.5"), but we have
switched the versioning scheme and "feature releases" are named with
three-dotted decimal digits that ends with ".0" (e.g., "1.9.0").

The last such release was 2.44 done on Feb 22nd, 2024.  We aim to keep
that the tip of the "master" branch is always more stable than any of
the released versions.

Whenever a feature release is made, "maint" branch is forked off from
"master" at that point.  Obvious and safe fixes after a feature
release are merged to this branch and maintenance releases are cut
from it.  Usually the topic branches that contain these fixes are
merged to the "master" branch first, before getting merged to the
"maint" branch, to reduce the chance of last-minute issues, but
things like embargoed security fixes may first appear in the "maint"
and merged up to "master" at the same time.  The maintenance releases
used to be named with four dotted decimal, named after the feature
release they are updates to (e.g., "1.8.5.1" was the first maintenance
release for "1.8.5" feature release).  These days, maintenance releases
are named by incrementing the last digit of three-dotted decimal name
(e.g., "2.43.2" was the second maintenance release for the "2.43" series).

New features almost never go to the "maint" branch.  It is merged into
"master" primarily to propagate the description in the release notes
forward.

When you send a series of patches, after review discussions on the
mailing list, a separate topic branch is forked from the tip of
"master" (or somewhere older, especially when the topic is about
fixing an earlier bug) and your patches are applied on that topic
branch, and kept out of "master" while people test it out.  The
quality of topic branches are judged primarily by the mailing list
discussions.

Topic branches that are in good shape are merged to the "next" branch.
The "next" branch is where new and exciting things take place.  In
general, the "next" branch always contains the tip of "master".  It
might not be quite rock-solid, but is expected to work more or less
without major breakage.  A topic that is in "next" is expected to be
polished to perfection before it is merged to "master".  Please help
this process by building & using the "next" branch for your daily
work, and reporting any new bugs you find to the mailing list, before
the breakage is merged down to the "master".

The "seen" (formerly "pu", proposed updates) branch bundles the
remaining topic branches the maintainer happens to have seen to remind
the maintainer that the topics in them might become interesting when
they are polished.

The contributors can use it to anticipate what topics from others
may cause conflict with their own work, and find people who are
working on these topics to talk to before the potential conflicts
get out of control.  It would be a good idea to fork from maint or
master to grow a topic and to test (1) it by itself, (2) a temporary
merge of it to 'next' and (3) a temporary merge to it to 'seen',
before publishing it.

Consider that a topic only in "seen" is not part of "git" yet.  When a
topic that was in "seen" proves to be in a testable shape, it is
merged to "next".

You can run "git log --first-parent master..seen" to see what topics
are currently in flight.  Sometimes, a topic that looked promising
proves to be a bad idea and the topic gets dropped from "seen" in such
a case.  The output of the above "git log" talks about a "jch" branch,
which is an early part of the "seen" branch; that branch contains all
topics that are in "next" and a bit more (but not all of "seen") and
is used by the maintainer for his daily work.

The two branches "master" and "maint" are never rewound, and "next"
usually will not be either.  After a feature release is made from
"master", however, "next" will be rebuilt from the tip of "master"
using the topics that didn't make the cut in the feature release.
Some topics that used to be in "next" during the previous cycle may
get ejected from "next" when this happens.

A natural consequence of how "next" and "seen" bundles topics together
is that until a topic is merged to "next", updates to it is expected
by replacing the patch(es) in the topic with an improved version, and
once a topic is merged to "next", updates to it needs to come as
incremental patches, pointing out what was wrong in the previous
patches and how the problem was corrected.  The idea is that if many
reviewers thought it has seen enough eyeballs and is good enough for
"next", yet we later find that there was something we all missed, that
is worth a separate explanation, e.g., "The primary motivation behind
the series is still good, but for such and such reasons we missed this
case we are fixing.", hence we prefer follow-up incremental patches.

Note that being in "next" is not a guarantee to appear in the next
release, nor even in any future release.  There were cases that topics
needed reverting a few commits in them before graduating to "master",
or a topic that already was in "next" was reverted from "next" because
fatal flaws were found in it after it was merged to "next".


* Other people's trees.

Documentation/SubmittingPatches outlines to whom your proposed changes
should be sent.  As described in contrib/README, I would delegate fixes
and enhancements in contrib/ area to the primary contributors of them.

Although the following are included in git.git repository, they have their
own authoritative repository and maintainers:

 - git-gui/ comes from git-gui project, maintained by Pratyush Yadav:

        https://github.com/prati0100/git-gui.git

 - gitk-git/ comes from Paul Mackerras's gitk project:

        git://ozlabs.org/~paulus/gitk

 - po/ comes from the localization coordinator, Jiang Xin:

	https://github.com/git-l10n/git-po/

When sending proposed updates and fixes to these parts of the system,
please base your patches on these trees, not git.git (the former two
even have different directory structures).

```

## Brian Lyles, 2024-03-21 00:03

Subject: Re: A note from the maintainer
Message-ID: <17be9ebbcb24ec98.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>
URL: https://gitlist.dev/e/17be9ebbcb24ec98.70b1dd9aae081c6e.203dcd72f6563036%40zivdesk
In-Reply-To: <xmqqr0g4hopl.fsf@gitster.g>

```
Hi Junio

On Wed, Mar 20, 2024 at 11:18 AM Junio C Hamano <gitster@pobox.com> wrote:

> If you sent a patch and you did not hear any response from anybody for
> several days, it could be that your patch was totally uninteresting,
> but it also is possible that it was simply lost in the noise. Please
> do not hesitate to send a reminder message in such a case.  Messages
> getting lost in the noise may be a sign that those who can evaluate
> your patch don't have enough mental/time bandwidth to process them
> right at the moment, and it often helps to wait until the list traffic
> becomes calmer before sending such a reminder.

I think it would be good to revise this wording in future iterations.
"Totally uninteresting" is a bit ambiguous, and also sounds quite
negative (at least to me).

To me, this initially sounded like it meant "your patch was not
something that the git maintainers would be interested in accepting". I
*suspect* that what is actually meant here is "your patch was
straightforward and non-controversial to the point that no members of
the list saw it and felt the need to comment on it", though to be honest
I am not 100% sure.

If it is expected that a "totally uninteresting" patch might, in fact,
end up in your tree without further comment, I think it could be helpful
to indicate that as well.

Here is what comes to my mind based on my (very likely not full)
understanding of the process:

    If you have sent a patch to the list and have not heard any response
	for several days, a few things may have happened:
	
	- Your patch was straightforward and non-controversial, so no
	  members of the list felt the need to comment on it
	- The members of the list that would review your patch do not have
	  the time to process them at the moment
	- Your patch was simply lost in the noise

	If you are unsure, keep an eye on the next few "What's cooking in
	git.git" emails. If your patch does not make an appearance there
	within a week or so, you may want to send out a reminder. It often
	helps to wait until the list traffic becomes calmer before sending a
	reminder.

I don't know how accurate that actually is, but I think it conveys the
tone and clarity that I am getting at.

-- 
Thank you,
Brian Lyles

```

## Junio C Hamano, 2024-03-21 01:01

Subject: Re: A note from the maintainer
Message-ID: <xmqq4jd0fle4.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqq4jd0fle4.fsf%40gitster.g
In-Reply-To: <17be9ebbcb24ec98.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>

```
"Brian Lyles" <brianmlyles@gmail.com> writes:

> To me, this initially sounded like it meant "your patch was not
> something that the git maintainers would be interested in accepting". I
> *suspect* that what is actually meant here is "your patch was
> straightforward and non-controversial to the point that no members of
> the list saw it and felt the need to comment on it", though to be honest
> I am not 100% sure.

I actually meant what I wrote.

It is possible that the reason why your patch did not receive any
response was because it was uninspiring, looked useless, and did not
deserve anybody's attention.  But it is also possible that it was
lost in the noise.

And pinging on the topic by responding to your own message is not
just acceptable but very much appreciated way to remind others who
may have missed it, in case it is the latter.

If a topic is truly obvious and straight-forward, it may be taken
silently to 'seen' and even to 'next', and since it is suggested for
the contributors to look at "master..seen", such a topic would not
fall into the "hear nothing about it from anybody for a long time"
category anyway.

```

## Brian Lyles, 2024-03-21 01:38

Subject: Re: A note from the maintainer
Message-ID: <17bea3e3320609ca.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>
URL: https://gitlist.dev/e/17bea3e3320609ca.70b1dd9aae081c6e.203dcd72f6563036%40zivdesk
In-Reply-To: <xmqq4jd0fle4.fsf@gitster.g>

```
On Wed, Mar 20, 2024 at 8:01 PM Junio C Hamano <gitster@pobox.com> wrote:

> "Brian Lyles" <brianmlyles@gmail.com> writes:
> 
>> To me, this initially sounded like it meant "your patch was not
>> something that the git maintainers would be interested in accepting". I
>> *suspect* that what is actually meant here is "your patch was
>> straightforward and non-controversial to the point that no members of
>> the list saw it and felt the need to comment on it", though to be honest
>> I am not 100% sure.
> 
> I actually meant what I wrote.
> 
> It is possible that the reason why your patch did not receive any
> response was because it was uninspiring, looked useless, and did not
> deserve anybody's attention.  But it is also possible that it was
> lost in the noise.
> 
> And pinging on the topic by responding to your own message is not
> just acceptable but very much appreciated way to remind others who
> may have missed it, in case it is the latter.
> 
> If a topic is truly obvious and straight-forward, it may be taken
> silently to 'seen' and even to 'next', and since it is suggested for
> the contributors to look at "master..seen", such a topic would not
> fall into the "hear nothing about it from anybody for a long time"
> category anyway.

Thanks for the clarification. I do still think that a change in the
wording and tone of this section could help make the project appear more
friendly to new contributors. Phrases like "totally uninteresting",
"uninspiring", "looked useless", and "did not deserve anybody's
attention" are all fairly harsh sounding, even if sometimes true.

Something more along the lines of "Mailing list members may not have
seen the value of the proposed changes" or "Your patch may not have
presented a convincing argument for being accepted" might land a little
more gently and make someone more willing to make another attempt at a
more compelling patch rather than feeling harshly rejected and leaving
with a bad taste in their mouth about the project like has happened in
the past [1].

[1]: https://lore.kernel.org/git/xmqq7ck7x10y.fsf@gitster.g/

Simply food for thought from someone relatively new to the list.

-- 
Thank you,
Brian Lyles

```

## Junio C Hamano, 2024-03-21 13:12

Subject: Re: A note from the maintainer
Message-ID: <xmqqwmpvbufw.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqqwmpvbufw.fsf%40gitster.g
In-Reply-To: <17bea3e3320609ca.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>

```
"Brian Lyles" <brianmlyles@gmail.com> writes:

>> I actually meant what I wrote.
>> 
>> It is possible that the reason why your patch did not receive any
>> response was because it was uninspiring, looked useless, and did not
>> deserve anybody's attention.  But it is also possible that it was
>> lost in the noise.
>> ...
> Thanks for the clarification. I do still think that a change in the
> wording and tone of this section could help make the project appear more
> friendly to new contributors. Phrases like "totally uninteresting",
> "uninspiring", "looked useless", and "did not deserve anybody's
> attention" are all fairly harsh sounding, even if sometimes true.

You completely lost me.  How much harsh words are used before "But
it is also possible" would not make the project sound less friendly
at all.

Let me try again.

You see your patch was sent but did not receive any reaction.  You
might start thinking: "hmm, perhaps my patch was so horrible" and
you might think all the bad and harsh things about the quality of
your patch.

But do not let such thought stop you from pinging the thread again,
because the quality of your patch may not at all be the reason why
you did not receive any reaction.  It could be just people were
swamped and your patch fell into cracks, and there was nothing wrong
with it.

```

## Brian Lyles, 2024-03-22 01:14

Subject: Re: A note from the maintainer
Message-ID: <17bef1274bfb2614.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>
URL: https://gitlist.dev/e/17bef1274bfb2614.70b1dd9aae081c6e.203dcd72f6563036%40zivdesk
In-Reply-To: <xmqqwmpvbufw.fsf@gitster.g>

```


> "Brian Lyles" <brianmlyles@gmail.com> writes:
> 
>>> I actually meant what I wrote.
>>> 
>>> It is possible that the reason why your patch did not receive any
>>> response was because it was uninspiring, looked useless, and did not
>>> deserve anybody's attention.  But it is also possible that it was
>>> lost in the noise.
>>> ...
>> Thanks for the clarification. I do still think that a change in the
>> wording and tone of this section could help make the project appear more
>> friendly to new contributors. Phrases like "totally uninteresting",
>> "uninspiring", "looked useless", and "did not deserve anybody's
>> attention" are all fairly harsh sounding, even if sometimes true.
> 
> You completely lost me.  How much harsh words are used before "But
> it is also possible" would not make the project sound less friendly
> at all.
> 
> Let me try again.
> 
> You see your patch was sent but did not receive any reaction.  You
> might start thinking: "hmm, perhaps my patch was so horrible" and
> you might think all the bad and harsh things about the quality of
> your patch.
> 
> But do not let such thought stop you from pinging the thread again,
> because the quality of your patch may not at all be the reason why
> you did not receive any reaction.  It could be just people were
> swamped and your patch fell into cracks, and there was nothing wrong
> with it.

Ah, okay -- I think I am better understanding the intent vs. how I
(mis)interpreted it initially. My initial interpretation was more along
the lines of "there are two possibilities: Either it was uninteresting,
or it got missed". This re-phrasing reads more as "don't assume it was
uninteresting, it may have simply been missed". Both true, but the
latter reads better in my opinion.

Thank you for clarifying. I will let you decide if some updated wording
is warranted in future notes from the maintainer, or if I simply
interpreted things in a way that you do not think others would.

-- 
Thank you,
Brian Lyles

```

## Junio C Hamano, 2024-03-22 02:06

Subject: Re: A note from the maintainer
Message-ID: <xmqq7chv58by.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqq7chv58by.fsf%40gitster.g
In-Reply-To: <17bef1274bfb2614.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>

```
"Brian Lyles" <brianmlyles@gmail.com> writes:

> Thank you for clarifying. I will let you decide if some updated wording
> is warranted in future notes from the maintainer, or if I simply
> interpreted things in a way that you do not think others would.

Perhaps like this, then?

diff --git a/MaintNotes b/MaintNotes
index 57aa6dd..18d8bcb 100644
--- a/MaintNotes
+++ b/MaintNotes
@@ -34,8 +34,8 @@ and Documentation/CodingGuidelines to familiarize yourself with the
 project convention.
 
 If you sent a patch and you did not hear any response from anybody for
-several days, it could be that your patch was totally uninteresting,
-but it also is possible that it was simply lost in the noise.  Please
+several days, it does not necessarily mean that your patch was totally
+uninteresting; it may mearly mean that it was lost in the noise.  Please
 do not hesitate to send a reminder message in such a case.  Messages
 getting lost in the noise may be a sign that those who can evaluate
 your patch don't have enough mental/time bandwidth to process them

```

## Brian Lyles, 2024-03-22 02:35

Subject: Re: A note from the maintainer
Message-ID: <17bef592f076ab87.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>
URL: https://gitlist.dev/e/17bef592f076ab87.70b1dd9aae081c6e.203dcd72f6563036%40zivdesk
In-Reply-To: <xmqq7chv58by.fsf@gitster.g>

```
Hi Junio

On Thu, Mar 21, 2024 at 9:06 PM Junio C Hamano <gitster@pobox.com> wrote:

> "Brian Lyles" <brianmlyles@gmail.com> writes:
> 
>> Thank you for clarifying. I will let you decide if some updated wording
>> is warranted in future notes from the maintainer, or if I simply
>> interpreted things in a way that you do not think others would.
> 
> Perhaps like this, then?
> 
> diff --git a/MaintNotes b/MaintNotes
> index 57aa6dd..18d8bcb 100644
> --- a/MaintNotes
> +++ b/MaintNotes
> @@ -34,8 +34,8 @@ and Documentation/CodingGuidelines to familiarize yourself with the
>  project convention.
>  
>  If you sent a patch and you did not hear any response from anybody for
> -several days, it could be that your patch was totally uninteresting,
> -but it also is possible that it was simply lost in the noise.  Please
> +several days, it does not necessarily mean that your patch was totally
> +uninteresting; it may mearly mean that it was lost in the noise.  Please
>  do not hesitate to send a reminder message in such a case.  Messages
>  getting lost in the noise may be a sign that those who can evaluate
>  your patch don't have enough mental/time bandwidth to process them

I think that makes the intended meaning much clearer. Minor spelling
correction: s/mearly/merely/

-- 
Thank you,
Brian Lyles

```

## Junio C Hamano, 2024-03-22 02:44

Subject: Re: A note from the maintainer
Message-ID: <xmqqr0g33rzp.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqqr0g33rzp.fsf%40gitster.g
In-Reply-To: <17bef592f076ab87.70b1dd9aae081c6e.203dcd72f6563036@zivdesk>

```
"Brian Lyles" <brianmlyles@gmail.com> writes:

> I think that makes the intended meaning much clearer. Minor spelling
> correction: s/mearly/merely/

Thanks.

```
