GitLab provides a number of ways to view and interact with a git repository. There is the classic file browser that lets you explore the files in your repository:
There's also a branch viewer, which lets you see variations of your work under active development, as well as branches that are considered stale and no longer developed:
Alongside this is a tag viewer that lets you explore specific releases of your work:
There are tools that can be used to analyze and view the commit graph:
Among these tools are charting tools, which are used to get a better understanding of the composition of the repository:
Alongside this is a breakdown of the frequencies of commits and activity:
For users who are not familiar with git commands or those away from their work computer, GitLab also provides a web interface where you can make changes to code and commit it straight from the browser:
Aside from being a web interface for git, GitLab also provides tools for a variety of purposes, including powerful feature planning and issue management tools:
These tools help keep everyone in sync, allowing them to understand the current workload and roadmap and making sure that work isn't double-handled and is correctly prioritized. With things like epics, milestones, and cycle analytics, GitLab can help measure the effectiveness of your development process.
It also includes the necessary tools for code review prior to merging branches to ensure that all work is up to scratch:
Automated testing tools and pipelines are also included to help make sure that code is working perfectly before it's merged back in or released:
Thanks to the powerful, built-in, continuous integration/continuous deployment (CI/CD) platform (explored further in Chapter 5, Continuous Integration And Continuous Deployment), GitLab can not only test your code, but also build and deploy/release it under circumstances that you control.