Difference between revisions of "Code review"

From Software Heritage Wiki
Jump to: navigation, search
(Good reads: add Atlassian article on knowledge sharing)
(move to the main doc)
(Tag: Replaced)
Line 1: Line 1:
This page documents code review practices used for [[Software Heritage]] development.
This page [https://docs.softwareheritage.org/devel/contributing/code-review.html#code-review moved to the main developer documentation]
== Guidelines ==
Please adhere to the following guidelines to perform and obtain code reviews (CRs) in the context of Software Heritage development:
# '''CRs are strongly recommended''' for any non-trivial code change, but not mandatory (nor enforced at the VCS level).
# The CR [[Code review in Phabricator|'''workflow''']] is implemented using Phabricator/Differential.
# Explicitly '''suggest reviewer'''(s) when submitting new CR requests: either the most knowledgeable person(s) for the target code or the general [https://forge.softwareheritage.org/project/view/50/ reviewers] group (which is the [https://forge.softwareheritage.org/H18 default]).
# '''Review anything you want''': no matter the suggested reviewer(s), feel free to review any outstanding CR.
# '''One LGTM is enough''': feel free to approve any outstanding CR.
# '''Review every day''': CRs should be timely as fellow developers will wait for them. To make CRs sustainable each developer should strive to dedicate a fixed minimum amount of CR time every (work) day.
For more detailed suggestions (and much more) on the motivational and practical aspects of code reviews see Good reads below.
== Good reads ==
Good reads on various angles of code review:
* '''[https://medium.com/palantir/code-review-best-practices-19e02780015f Best practices]''' (Palantir) ← comprehensive and recommended read, especially if you're short on time
* [https://github.com/thoughtbot/guides/tree/master/code-review Best practices] (Thoughtbot)
* [https://smartbear.com/learn/code-review/best-practices-for-peer-code-review/ Best practices] (Smart Bear)
* [https://www.codeproject.com/Articles/524235/Codeplusreviewplusguidelines Review checklist] (Code Project)
* [https://blog.codinghorror.com/code-reviews-just-do-it/ Motivation: code quality] (Coding Horror)
* [https://blog.fullstory.com/what-we-learned-from-google-code-reviews-arent-just-for-catching-bugs/ Motivation: team culture] (Google & FullStory)
* [http://www.processimpact.com/articles/humanizing_reviews.pdf Motivation: humanizing peer reviews] (Wiegers)
* [https://www.atlassian.com/agile/software-development/code-reviews Motivation: sharing knowledge] (Atlassian)
== See also ==
* [[Code review in Phabricator]]
* [[Coding guidelines]]
[[Category:Software development]]
[[Category:Software development]]

Revision as of 07:51, 18 March 2021