Before we dive into installing GitLab from source, please beware of the fact that using this method is not advised for production environments. It is very hard to maintain and reproduce a custom GitLab install. There are many components and it is much more efficient to use a package like Omnibus, where you get tried and tested software and dependencies.
It can however, prove useful in understanding how a GitLab installation is created.
When installing from source, make sure you have reviewed the latest installation guides for your platform for the GitLab branch you want (for example, 12-0). The instructions in this book will ultimately be out of date. Furthermore, if you run into an issue, you can try to find an answer on the GitLab forum: https://forum.gitlab.com/c/troubleshooting. If the problem turns out to be a bug or unwanted behavior by GitLab, you can...