I went through two startups and decided to use Redmine for both. Tried GitHub once and later migrated over, due to data ownership concerns and bad usability for project management. Tried self-hosted GitLab for a small group but abandoned it later due to inconsistency with internal workflow.
Redmine also has its own shortcomings. As a Xoogler occasionally I really miss the ease of use of Google's internal bug tracker.
I've also heard people using Phabricator if they were in FB. But I never had the chance to give it a try.
Redmine Mentions https://www.redmine.org/plugins/redmine-mentions
Redmine Banner https://www.redmine.org/plugins/redmine_banner
Redmine Slack https://www.redmine.org/plugins/redmine-slack
I’m partial to the Agile, Checklists, CMS, and CRM plug-ins from RedmineUp, too. I think they’re essential. There are both free and “pro” versions:
Redmine Agile https://www.redmine.org/plugins/redmine_agile
Redmine Checklists https://www.redmine.org/plugins/redmine_checklists
Redmine CMS https://www.redmine.org/plugins/redmine_cms
Redmine CRM https://www.redmine.org/plugins/redmine_contacts
We still use GitLab, just not for issue tracking anymore. At the free and lower-cost tiers, GitLab lacks a bunch of issue fields (they seem to prescribe using tags for things like priority), and very annoyingly GitLab’s agile board cannot display issue cards from multiple projects simultaneously on one board.