Application Development Blog Posts
Learn and share on deeper, cross technology development topics such as integration and connectivity, automation, cloud extensibility, developing at scale, and security.
cancel
Showing results for 
Search instead for 
Did you mean: 
larshp
Active Contributor


 

Introduction


You have probably stumbled upon some cool projects at github like the linux kernel or node-js. Until now it has been quite cumbersome to push your open source ABAP to Git repositories, abapGit will help to make this easier.

 

 

abapGit is a Git client written in ABAP for ABAP, it lets you clone projects or commit objects to the Git repository.

 

 

Installing



  • Download the source code from the github repository

  • Paste the code in new report using SE38

  • Configure SSL in transaction STRUST

  • Run


 

 

Uninstalling



  • Delete report

  • Delete standard texts ZABAPGIT* via SO10


 

 

How abapGit works


First step is to clone a repository, this will create the objects from the repository in the SAP system. After this, one of the following commands will appear:

 

pull

If the files in the repository have been changed, the ABAP objects can be updated with the pull command

 

commit

If the latest changes are implemented in the SAP system, and objects in SAP are changed, the changes can be pushed to the Git repository using the commit command.

 

add

After having pulled or cloned the repository, the objects will be in sync, at this stage it is possible to add new ABAP objects to the Git repository.

 

 

Design/Internals


The "distributed" part of Git is not implemented in abapGit, it will pull data from the repository quite often, and advanced git commands like blame etc. is also not supported. It is currently only possible to serialize reports, classes, data elements, and domains, other objects will be implemented over time. All code will be serialized to .abap files in the repository making it easy to read online, meta data will be serialized to .xml files.

Beware that this is alpha software and provided "as is", take care and only run in test systems.

 

 

 

Hopefully abapGit will help to ease cooperation in ABAP open source projects and inspire more to do open source ABAP.

20 Comments