2- Alexis Raimbault
on May 25 2010
i found three differents workflows :
distributed workflow
assume some people share a software project. Each people owns one or some versions of the project. All versions progress parallel.
As people may leave far from each other and works with personnal computer and not servers, they use the email-patch method to exchange their modifications.
Each people decided which modification they share and witch they pull. It's possible because GIT index the content of the files, not only the file itself. Of course people needs to know what they do to keep code integrity.
centralized worflow
In case the project is public you may need a official version, reviewed by a qualified person. You may need also online official depot for people to download sources. You may also want to deliver tarball archives.
This workflow needs a maintainer in charge of official branches for the sources. Branches looks a bit like SVN organization.
Pyramidal workflow
Linus thorvald explaned a bit this workflow in the video.
On a big project like linux, it would be a tuff job to review all the modification made by contributors. In fact the leader pulls modification from only 5 or 6 persons he very trusts. But those 6 persons check the job of other's one, and so on.
Alexis Raimbault webmaster free-lance
3- Alexis Raimbault
on June 7 2010
those diagrams illustrate differents workflow, each of them with a public repository
Subversion

Integration manager

Dictator and lieutenant (pyramidal)

Alexis Raimbault webmaster free-lance











1- Alexis Raimbault
on May 14 2010
this text give also some clues about the job of a software maintainer :
http://www.kernel.org/pub/software/scm/git/docs/howto/maintain-git.txt
We can understand how to organizes main branches, a bit like SVN.
This work is nessessary for people in charge of delevering yacs' release (building tarball).
other developpers just commit their works by email thru the 'patch' mecanism.
Alexis Raimbault webmaster free-lance