Thread (1 message) 1 message, 1 author, 2016-06-15

Re: Question about used Workflows.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:50:47

Valentin Haenel [off-list ref] writes:
I was wondering what kind of workflow the Git project itself uses. From
what I gather much of the development takes place using the list, and
patches sent by mail. Do any of the core contributers maintain public
developer repos? And how many developers on average have push privileges
to http://git.kernel.org/?p=git/git.git;a=summary?
Only I push into that repository, but first of all, everybody should stop
thinking "push" as a privilege.  That repository is like "my" home, and
the statement "I have a privilege to enter my home" does not have much
meaning.  It may be technically correct, but other people have the same
privilege to enter their homes (i.e. have their own public repositories
that only they can push into, and others can pull their work from there),
so it is not noteworthy.

Changes are reviewed on the list in patch form, and most of the time I've
been applying these changes to my tree and pushing the results out to my
public repository, but from time to time, other people do give me a pull
request, and I pull from them to integrate their work. The result again is
published by pushing it out to my public repository.

In a distributed world, the "primary" repository exists only by social
convention. My repository happens to be the primary one for now, but if
somebody wants to fork git and starts making a lot of good changes at a
rapid pace that neither I nor the current list reviewers can keep up with,
the repository of that person may become a more popular source of the
cutting-edge version of git, and if that continues, it may become the
"primary" one, at which point the list (including me) may decide that it
is a good idea to turn the maintainership to that new person.

When I had to leave the net for extended period of time (which happened a
few times in the past), I don't give the key to my home ("push privilege")
to an interim maintainer. Instead, the interim maintainer keeps his own
public repository ("his home"), and pushes to that repository by playing
exactly the same role as I do, picking up well-reviewed patches from the
mailing list and responding to pull requests. In the meantime, people work
off of his repository. When I come back, I can pull from the interim
maintainer and the continuity of the end-result history is maintained.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help