Skip to content

Document our VCS and code review practices#8

Open
zah wants to merge 1 commit into
mainfrom
git-branching-model
Open

Document our VCS and code review practices#8
zah wants to merge 1 commit into
mainfrom
git-branching-model

Conversation

@zah

@zah zah commented Nov 26, 2021

Copy link
Copy Markdown

No description provided.

Comment thread src/tooling.git.md

Work on big ideas is divided into smaller, at most week-sized, chunks that each reasonably can be digested and reviewed in one sitting - the output here might be an overview, a prototype or progress towards a milestone or a snapshot of the work done so far, with the aim to involve reviewers early and allow space and time for course adjustments as the idea develops.

Uncontested portions of the developed code that don't introduce significant risks or can be properly gated through feature flags are merged as soon as possible in order to reduce the size of the long-lived feature branch. Compile-time feature flags are preferred to run-time feature flags.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this last bit is not necessarily true - a good example has been the introduction of the new connection model - it took user feedback to come up with adjustments that will need to be done, and such feedback cannot be expected to happen with compile-time flags. In general, now that the software is released, a practice we've been introducing is releasing certain features as preview behind a "beta" tag - this has worked pretty well.

Comment thread src/tooling.git.md
We strive to follow [trunk-based development](https://trunkbaseddevelopment.com/) with few caveats.
Since the cost of introducing correctness (or security) issues in our software is very high, we don't welcome even temporary quality regressions or sources of risk within our main branch. This may lead to feature branches that are a bit longer-lived than the trunk-based development ideal of 2 to 3 days.

Generally, all significant code changes are reviewed by at least one team member and must pass CI.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

with this change, we can remove the one in the introduction and link instead

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants