Chapter 5. Creating Good House Rules for Guests: Writing Contributing Agreements
TL;DR
Trusted Committers (TCs) are responsible for writing contributing agreements to explain house rules to contributors (e.g., code conventions and dependencies). Contributing agreements are living documents.
Contributors need to be good houseguests and read the agreements (and any other findable documentation) before contributing. The better they groom their contribution to match the contributing agreement, the greater the velocity of acceptance.
Management needs to support the TCs on these agreements.
Be careful when standardizing agreements because this leads to less ownership by the TCs. Complex agreements can prevent contributions and should be reserved for high-risk projects.
TCs cannot be forced to accept and take ownership of broken code, code without proper tests, undocumented code, or even code that doesn’t meet their style standards. Contributing agreements are a way to formalize the responsibilities of the developers on the originating side of the code.
What Is a Contributing Agreement?
The TCs write and own their contributing agreements. A contributing agreement is a device that specifies the house rules to let contributors know what is required in order for the TC to accept a code contribution. Contributing agreements are viewable by everyone in development. They must have the TCs’ names, contact information, and schedule. After that, the content is up to the TC. It will likely ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access