New App: Manage Your Software Development Lifecycle with GitLab
Building a new project is hard enough. You’ve got the ideas and want to turn them into something great, but first you’ve got to figure out where to start. What features are truly crucial, which can wait, and how are you going to roll out changes and ensure your team is actually improving the product over time?
GitLab has everything you need to take your development project from start to completion. It's first and foremost a git-powered versioning control system to enable code collaboration. But it's far more than just that, with a built-in issue tracker, project wiki, code snippet manager, CI deployment service, and monitoring tools to keep tabs on your performance—both how well your code is running and how well your team is shipping new releases.
It starts not with your code, but with your issues—the ideas you have and things you want to accomplish with this project first. Eventually it'll track the actual issues and bugs in your code, but it can actually be your team's full project management tool. You can view issues in a list or a kanban-style board. Add items one after another—just press
return to add a new item, or fill out the details in GitLab's issue sidebar where you can include due dates, tags, time tracking, and more. You can even plan out the big picture of your project with GitLab's milestones, and use burndown charts to track the time issues take to resolve and estimate when your project will be completed. And when you get to work each day, you can see all of your assigned issues from the Todos menu in the top of the app.
Then it's time to start building. You'll code with the tools you're already using, pushing changes to GitLab with git. Then you can merge conflicts and requests, pick the changes you want to keep, preview changes, and more from GitLab's web app. You can even manage your workflow via email and Slack, making issues and merge requests without having to switch over to another app. You can go back and see what your team has done, search through your files, and switch back to earlier builds if something goes wrong. There's a built-in git-powered wiki that you can add documentation and notes to as well for an easy way to keep track of what you're working on with the same tools you use to build your products, and Jekyll powered pages to make a quick website about your product.
GitLab's testing tools then come in, automatically checking for well-known security bugs and help you see how your changes will affect your existing code. Once everything's ready, GitLab can package the new release onto a Docker image and release it for you—something you can even control from Slack to deploy the new version of your site as soon as you get the team's ok on it. GitLab will then keep track on things, with built-in Prometheus monitoring, dashboards with performance metrics, and automated browser performance testing to make sure your new version isn't slower than the old one it replaced.
Best of all, GitLab works where you want it to. It's a hosted git service that can run online, with a full open-source version you can install and run on your own servers. GitLab includes nearly everything you need to plan, produce, and publish your projects—in a tool that works where you want it to.