I think it's important to clarify that even though GitLab's core is open source, its own business model is built on the idea of an enterprise version that includes proprietary code.
Many useful "advanced" features, such as "squash and merge" are only included in the EE.