I prefer gitlab over GitHub for ages, mostly because CI is actually a native part of the service and not something external as with GitHub and Travis. Also it’s much more flexible as one can use arbitrary docker images for running the tests.
You even get a project specific docker registry at gitlab.
Also I prefer gitlab nomenclature of Merge Requests over GitHubs Pull Request, but that’s just a name.
Even more important for me is, that I can click a button in an issue and a MR with branch is created automatically, I just need to pull and can work.
Also the WIP feature which disables accidentally merging unfinished MRs is cool.
Last but not least I like that issues and MRs have distinct numbering and are distinguished by prefixing with either # for issues or ! for MRs.