Recs.
Updated
SpecsUpdate
Pros
Pro High security
It's open source and it can be installed on your own machine, which gives high security and isolated environment for the codes. Whole application installation is super easy and independent from the Linux distribution.
Pro Powerful and flexible code review
Code reviews can be done via Pull Requests, or simply commit-by-commit. There are voting rules, random reviewers pools, and smart comment invalidation logic. Pull requests are also versioned so it's easy to review partial changes after the author has updated his code.
When you create a Pull-request you can add set of reviewers. They all have to vote and approve the PR. There's some flexibility on how the voting is accepted, it can be majority wins, or all-agree. Good practice is to add BOT accounts like jenkins, that also will vote on the review, based on for example tests run, and can forbid a merge because of a negative vote. In addition users can leave special type of comments that will also prevent merges, aka TODO notes. Once TODOs are resolved a Pull Request can be merged.
Pro Header authentication plugin allows auth delegation to 3rd party systems
The builtin header auth can delegate authentication to other existing systems for further validation chain.
Cons
Con Hard to maintain and upgrade
The documentation is not very clear and it's hard to troubleshoot if there is a failure.