Here is a useful article how to organize your code release process. In short
- Code not running in production is not ‘production quality’ code. Even if you tested it thoroughly, it does mean nothing until it runs in production.
- Commit to releasing small pieces of code – a few dozen lines at once, not a huge commits.
- Monitor system behavior after each release – you’ll notice problems occurring fast and correlate it to specific release. The small is the release – the easier is reviewing it.
Read here. (5 minute read)