How can I use Git and GitHub for SAP software development?

Assembla, Bitbucket, GitHub, Mercurial and Subversion are some of the open-source version-control and collaboration platforms available for managing SAP development projects.

If you do SAP software development you may have heard of Git, GitHub, or similar DevOps products such as Mercurial,...

Subversion and Assembla. What are they, and what do you need to know about using them for SAP software development?

Git, Mercurial, and Subversion are source-code management and version-control products. They are used to store the source code for a project, track the complete history of all changes to that code, and allow developers to collaborate on a project more easily by providing tools for managing possibly conflicting changes from multiple developers. Git was introduced in 2005 and has quickly become the dominant, distributed version-control system for open-source development projects.

GitHub is a Software-as-a-Service (SaaS) platform for managing software projects. It is based around a Git repository, but also provides a Web interface to the repository and basic issue management, as well as streamlined management of contributions from other developers through a function GitHub calls “pull requests.” Other tools, including Assembla and Bitbucket, are alternatives to GitHub and offer similar functionality. Many tools like Jenkins and Maven plug into Git and GitHub as well.

The real integration point to SAP tools is the Git tool itself. To use Git, you can host your own enterprise Git repository (you might already have one), use one of the SaaS tools such as GitHub, or purchase and run an on-premises version of GitHub or alternative tools. Once you have Git available, there are a few ways you can introduce Git’s powerful distributed version-control functionality in your SAP software development environment.

SAP WebIDE is available in on-premises HANA installations and through the HANA Cloud Platform. It allows extensive integration with Git repositories right in the integrated development environment (IDE).If you are using the HANA Cloud Platform tools for Java, since they're based on Eclipse, you can use an Eclipse plug-in that integrates with Git repositories.

Unfortunately, the Eclipse plug-in approach won’t work well for ABAP in Eclipse because ABAP files are hosted centrally on the ABAP development system. For ABAP development, I recommend considering the open source ABAPGit project.

Dig Deeper on SAP development and programming languages

Data Management
Business Analytics
Content Management