Many other Development architectures have version control and more than one code base. This allows Developers to make updates and commit local repositories, which are then pushed back to a central repository at the appropriate time.
Figure: Distributed software development
SAP has historically been unable to work to this Distributed Development model. When one Developer works on an SAP object, it is locked, and other Developers cannot make concurrent changes to the same object. Some SAP customers attempt to get around this development limitation by introducing an N+1 parallel Development track, but ultimately the same limitation exists: it is not possible to make multiple changes to the same object at the same time.
Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files. Its goals include speed, data integrity, and support for distributed, non-linear workflows.
Git provides the central code repository that enables local versioning, branching and independent builds to support distributed development
Git can be used with a variety of Git hosts including GitHub, Bitbucket and GitLab. It is these hosts that provide the service for projects that use Git.
Figure: Common Git hosts within software development
abapGit is an open source Git client that lets ABAP developers work with a Git-based version control system.
Further information and resources on abapGit can be found in this external link.