Git repo hosting for enterprise development

- Mirror external repositories for distributed teams

- LDAP group sync for managing users

- Approvals for merge requests

Start My Free 30-Day Trial Now!

Self-Hosted

Easy Integration

Monthly Updates

Run GitLab on your own infrastructure. Own everything for increased security.

Seamless integrations with tons of tools like Slack, JIRA, Jenkins, and a full API.

Every month on the 22nd a new upgrade is released. Update in 2 minutes!

Start your free 30-day trial

Start My Free Trial Now!

© 2018 GitLab, Inc. All rights reserved.

Join More Than 100,000 Companies

In The News

“This well-kept secret for programmers is
suddenly popping up in the Fortune 500.”

“YC-backed GitLab is like GitHub, but for enterprise.”

No risk, no credit card required.

No risk, no credit card required.

The purpose of Git is to manage a project, or a set of files, as they change over time. Git stores this information in a data structure called a repository. A git repository contains, among other things, the following: A set of commit objects. A set of references to commit objects, called heads.

To create a new repo, you'll use the git init command. git init is a one-time command you use during the initial setup of a new repo. Executing this command will create a new .git subdirectory in your current working directory. This will also create a new master branch.