Gitblit is a free, open source, pure Java stack for managing, viewing, and serving Git repositories. It provides a web interface for viewing Git repositories, managing and creating users, managing access control lists (ACLs) for repositories, and viewing project and system metrics. It integrates with LDAP, Kerberos, and Microsoft Active Directory for user and group management. Gitblit allows users to manage multiple repositories and branches, create and manage teams, view and search commits, view source code, and manage tags and branches. It also provides an easy-to-use web interface for creating and managing Git repositories, managing users, managing access control lists (ACLs) for repositories, and viewing project and system metrics. Gitblit also allows users to integrate with a variety of external services and applications, such as GitHub, GitLab, Bitbucket, and others. Additionally, Gitblit provides an embedded Groovy scripting engine that allows users to customize the web interface, integrate with external services, and create custom extensions.
It's nice, easy to install, easy to use and brings all the important features. The only drawback (for me) is that there is no integration plugin for jenkins. So we can't link code inside jenkins jobs.