DEV Community

Discussion on: Enterprise Software Development

Collapse
 
craigaiken profile image
craigaiken

One small area where I differ on process is related to how you setup your CI. We typically disallow developers from doing direct pushes to our git repos, but instead we push changes into review. We use gerrit for this, but you could also do this with a github pull request.

We then use our Jenkins job(s) to build/test the code. Only after it passes some level of automated testing AND leads approve through code review do we have our jenkins job push the code into the repo. This way we ensure that the tip of the git repo is not broken.

Collapse
 
stealthmusic profile image
Jan Wedel • Edited

This depends on the product, service and BE/FE. Our team always does very deep reviews, it’s part of our Jira workflow. However, we don’t do prevent developers from pushing stuff. This actually never led to any problems. If it’s red, then one need to fix it. We have strong team ownership. I probably would use the process you described if we don’t have any staging and deploy right into prod.
We also mostly commit directly on develop because using feature branches just results in too much merging effort.