Para conseguir esto, se utilizala funcionalidad "protected branches"
Cuando una rama está protegida sucede lo siguiente:
- Nadie puede hacer push a esar rama excepto los usuarios que tengan el permiso master (más info sobre los permisos aquí: https://docs.gitlab.com/ee/user/permissions.html)
- Nadie puede hacer un push --force a esa rama ni tampoco nadie puede borrarla. Ni siquiera los usuarios que tienen pemisos master
Más información sobre como proteger el código aquí:
https://about.gitlab.com/2014/11/26/keeping-your-code-protected/