Working with branches and PRs
The most important and disruptive moment in software development is the integration of new code into an existing code base. At this time, you have to make sure that the new code does what the developer expects it to do and that it fits in well with the existing code, especially with the other recent changes that have just been developed by other developers.
Experience has shown that the integration of small increments is much quicker and easier to perform than so-called “big bang” releases, with huge amounts of code.
It is, in fact, much easier to be sure of what a small piece of code does, and as developing a small change takes a short time, there are very few changes that have been delivered since the development started and that the new piece of code must integrate well with.
Modern software engineering has adopted as a standard the use of version control systems (VCSs) for code, as it allows controlled and predictable steps in...