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.
New to Git and distributed version control? Here are some Git examples and Jenkins-Git integration tutorials designed to help you master the popular source code versioning tool.
- The five key Git commands to master first
- Change a commit and manipulate commit history with this hard git reset example
- What happens when you git reset and push?
- Learn to undo a commit with git revert
- Use the git cherry-pick command across branches
- Change the default Git commit editor to Notepad++
- Where the Git configuration files are stored
- Make continuous integration part of your DevOps journey with this Jenkins CI tutorial
- Include Jenkins Git environment variables in your freestyle builds
Dig Deeper on SAP ABAP
Related Q&A from Ethan Jewett
The design rule of thumb is to keep the Launchpad tile count under 20. But what about power users who need to launch more applications? Here are ... Continue Reading
The way Launchpad versions relate to each other and to SAPUI5 versions isn't intuitive, and both affect app compatibility and access to newer ... Continue Reading
If you want to get more serious about developing UI5 apps, you need to know how the libraries fit into the broader architecture, as well as their ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.