Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

I know there is a big push for code reviews in commercial development. However,

ID: 661410 • Letter: I

Question

I know there is a big push for code reviews in commercial development. However, are code reviews used in open source software or is based on trust? If so, then how are they performed? [Is it a delayed commit, "a pre commit environment", is there a tool that allows for the patch to be sent to another dev]?

Are there any projects that use code reviews?

From my understanding the Linux kernel is mostly based around trust of the committer. MySQL was based on the main author's approval and the performance impact.

Explanation / Answer

Almost all open source projects use some sort of gatekeeper workflow, where a person or group of people must sign off on all changes in order to go into the official build. Some larger projects, such as the Linux kernel, have layers of gatekeepers. You send a change to someone who manages an area of a subsystem, they send their changes to someone who manages an entire subsystem, and they send their changes to Linus Torvalds, who sometimes reviews the code himself or sometimes trusts his lieutenants. These reviews usually don't have a formal structure. It's just someone looking the code over before it gets merged.

As far as tools, look at the pull request mechanism on github for a good example. You make a pull request, and on a web page dedicated to that pull request people make comments and the author makes revisions until it is good enough to accept. Other gatekeepers just use plain git to apply patches from mailing lists or merge pull requests from public repositories, which is one of the main reasons DVCSes like git were invented.