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.
Get up to speed with Git and Git integration tools
- See how you would do on these Git and GitHub interview questions
- The five basic Git commands beginners need to master
- Undo a commit and manipulate commit history with this git reset --hard example
- Learn to git revert a commit with the bash shell
- Use the git cherry-pick command across Git branches
- Change the Git editor to Notepad++
- Where the Windows Git configuration files are stored
- Make continuous integration part of your DevOps journey with this Jenkins CI tutorial
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.
Learn more about the industry's most popular DevOps tools
If you want to become a DevOps engineer, you'll need to master a variety of DevOps tools. Here are some popular tutorials to get you closer to achieving DevOps mastery:
- A step-by-step Jenkins CI tutorial with examples
- Learn how to install and configure JFrog Artifactory and integrate Artifactory with Jenkins
- Learn how to use the SonarQube Maven plugin to inspect for code quality
- Test your job readiness with these Jenkins and DevOps interview questions
- Some tough, sample GitHub and Git interview questions
- Learn the benefits of continuous integration by working with these popular CI/CD tools
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.