diff options
author | Lars Wirzenius <liw@liw.fi> | 2021-04-22 17:23:34 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2021-04-22 17:23:34 +0300 |
commit | 9e814171e6f317a494ce843f3dc9c90371cbbad7 (patch) | |
tree | c5f55c6660cbeb89dea8184ed914ae15bff320a2 /contributing.md | |
parent | 108b045f1bad8141f4585cf22cee06ba498dcfa0 (diff) | |
download | obnam.org-9e814171e6f317a494ce843f3dc9c90371cbbad7.tar.gz |
docs: add code review process description to contributing.mdwn
Diffstat (limited to 'contributing.md')
-rw-r--r-- | contributing.md | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/contributing.md b/contributing.md index 51578d9..8d8980e 100644 --- a/contributing.md +++ b/contributing.md @@ -61,3 +61,46 @@ Some caveats so you know what to expect: back in a week, ping us on the issue or via a chat system. We try to be prompt, but sometimes work and life get in the way of working on hobby projects. + + +# Code review process + +We use [gitlab.com](https://gitlab.com/larswirzenius/obnam) for code +hosting, and their merge request feature for reviewing changes. +However, most changes are currently made by Lars, the founder of the +project, and he is also the only one who can merge. Reviewing one's +own changes is less than ideal, as well as boring. Thus, to open the +door to code reviews by other people, the following process is in +place: + +* Lars will push changes, and for each change set a value for N, which + may be different for each change. +* Lars will wait for N days for comments, and if nothing has been + raised that would prevent a merge, and if discussion isn't + continuing, Lars will merge. +* Comments on merge requests on gitlab.com will be open: anyone will + be able to comment. +* Lars may update the MR based on feedback, applying his best + judgment. + +Typical values for N will be: + +* 0 for typo fixes and similar low-impact changes, or fixes to + urgent high-impact issues (immediate self-merge) +* 1 for other urgent changes +* 3 for most changes – this will be the default +* 5 for changes likely to be controversial or affecting security + related code + +Lars will advertise the merge requests via various channels. The hope +is that this will eventually attract people to do reviews. As time +goes by, and trust is built, some of those people will get the +"approve" or "merge" privilege. The "approve" privilege allows marking +a merge request as "approved", allowing someone else to merge. The +"merge" one will allow telling GitLab to actually merge the change, +closing the merge request. + +Merge requests by others will follow the same process. If nobody else +reviews a change, Lars will do that. + +This process will be adjusted as needed as time goes by. |