I recently came across an approach of managing a project and its deliverable. Project team was using git repository for development. There was another repository being used for deploying artifacts. I can see several benefits with this approach.
- Keep the deployment history clean ( No developer commits )
- Limited access to deployment repository ( No developer can push to master and break things as they do not have access to the deployment repository )
- All the dependencies are in the deployment repository. This reduces the risk of running bower install or similar dependency managers at different stages of deployment and getting different results.
What are the benefits and disadvantages of this approach in your opinion ?