Continuous Integration Vs Branching
- ci means working with our changes always visible to everyone in the team.
- branching is the opposite of ci.
- branching means hiding changes from the main part of the code.
- we should minimize the amount of changes in every PR.
- we should commit constantly throughout the day, at least once.
- we should be comfortable with committing partially complete features
- if we are doing continuous delivery CD, we should be comfortable with our partially complete features going into production.
- separate deployment from release, deploying if different from releasing a feature for people to use.
- partially complete features can be deployed, but they are not ready to be released yet.
references