Still using Redmine for self-hosting here, Gitlab is too heavy for small teams. Thought about trying Phabricator but then its various components with strange names stopped me from trying, plus it seems clunky for small team too.
I recommend giving Phabricator a try. After evaluating several different tools we ultimately went for Phabricator. When I initially looked at it in ~2012 I was put off for similar reasons:
1. References to pokemon on main pages
2. Confusing names for features
3. Written in PHP (this was an initial bias from my prior experience with the language and belief that such a language wouldn't be used to maintain a large-scale application).
These three points led me to believe that Phabricator was not a first-party application but just PHP glue tying together other open source applications. With this in mind, along with the pokemon, I wrote it off as some highschool/college project and turned my attention elsewhere.
I took a fresh look at it in 2014 and realized several of these misconceptions. The developers of Phab tend to be light-hearted and embrace some humor in development. This has proven to be valuable in sustaining good-natured development teams and keeping code-criticisms well-intentioned. They also have a "serious" setting which tones down some of the language in the application itself.
The feature names can be confusing, which is a valid criticism though after a week or so it doesn't tend to interfere with work. The most difficulty in adopting Phabricator has been getting developers to understand the different development workflow to utilize the code review. Our team sizes range from ~3 to ~8 and haven't had any major problems.
They have an IRC channel which is usually pretty active, and I'm sure any questions or concerns you have can be brought up there.
We've been using it since ~Febuary 2015 and it's been a terrific addition to our development.
1 core works for under 100 users but the responsiveness might suffer
2 cores is the recommended number of cores and supports up to 100 users
4 cores supports about 1,000 users
8 cores supports up to 10,000 users
Memory
512MB is too little memory, GitLab will be very slow and you will need 250MB of swap
768MB is the minimal memory size but we advise against this
1GB supports up to 100 users (with individual repositories under 250MB, otherwise git memory usage necessitates using swap space)
2GB is the recommended memory size and supports up to 1,000 users
4GB supports up to 10,000 users
We use Redmine for ticket / issue / task tracking as well as rough timesheeting, and we use gitlab and gitlab CI along side it. I quite like how quick Redmine is and how it just gets out of your way. We find gitlab to be pretty quick however upgrades are painful due to regular bugs / regressions.
Ideally I'd like to see something like Taiga and Gogs together which I think would absolutely fly.