abapGitServer
A git server implemented in ABAP, so an SAP system can host repositories with branches and merge requests that an abapGitabapGitA Git client written in ABAP that runs inside the system, so objects are cloned, pulled and pushed without leaving it; with no package manager in ABAP, a cloned repository is how code is distributed.community org, abap client pulls from and pushes to.
Running a git remote usually means a server outside the SAP landscape. This activates the ZABAPGITSERVER service in SICF and serves repositories over HTTP to any abapGitabapGitA Git client written in ABAP that runs inside the system, so objects are cloned, pulled and pushed without leaving it; with no package manager in ABAP, a cloned repository is how code is distributed.community org, abap client, including branch creation, pushes and merge requests between branches of the same repository. It stops short of a full git server: there are no submodules or blame view, and it is tested primarily against abapGit as the client.
Facts
Where it sits
Who is behind it
In the atlas: maintains 13, contributes to 92, wrote 1@larshpmaintainerAboContributes to this
In the atlas: contributes to 8@AndreaBorgia-AboFabian LupaContributes to this
In the atlas: maintains 1, contributes to 7@fabianlupaFred VerheulContributes to this
In the atlas: contributes to 1@fredverheulAlexContributes to this
In the atlas: contributes to 2@geppartaJohannes GerbershagenContributes to this
In the atlas: maintains 1, contributes to 7@germanysourcesGregor WolfContributes to this
In the atlas: maintains 17, contributes to 59, wrote 2@gregorwolfJohannes KoningsContributes to this
In the atlas: contributes to 7@JohannesKoningsMarc BernardContributes to this
In the atlas: contributes to 26@mbtoolsNuno GodinhoContributes to this
In the atlas: contributes to 5@nununoMike PokrakaContributes to this
In the atlas: maintains 1, contributes to 11@pokrakam10 contributors
What it declares
Every artifact
- Type
- App
- Origin
- Independently maintained
As an app
- Where it runs
- does not say
- Distributed through
- abapGit
Connections
Keeping source and development objects in version control
Download
README
quoted from larshp/abapGitServer under MIT, readabapGitServer
Git server implemented in ABAP
Install
via abapGit
Setup
by activating the ServiceName ZABAPGITSERVER in transaction SICF
Start
to use it via the web frontend by running transaction ZABAPGITSERVER (or right click on the SICF service ZABAPGITSERVER and choose Test Service)
Merge requests
abapGitServer supports merge requests between two branches of the same repo.
Creating branches
After creating a new branch, push it directly to abapGitServer before committing any changes:
git branch <new>
git push origin <new>
After this operation you can make your changes and commit them to the new branch. When you push a new branch with new commits, the operation will fail.
News
2018-02-25: Support for tags added, use conversion program ZAGS_MIGRATION_03 to convert old repositories
2018-01-21: Field ADLER32 added in database table ZAGS_OBJECTS, use conversion program ZAGS_MIGRATION_02 to convert old repositories
2018-01-13: Make sure you have the latest development version of abapGit installed
2017-03-12: Key field REPO added in database table ZAGS_OBJECTS, use conversion program ZAGS_MIGRATION_01 to convert old repositories
Requirements
- https://github.com/larshp/ABAP-Swagger
- https://github.com/larshp/abapGit (the full repository version >= 1.102.0 is needed, not only the latest build on https://raw.githubusercontent.com/abapGit/build/master/zabapgit.abap)
Testing
Version requirement
see https://github.com/larshp/ABAP-Swagger
Scope
- Web interface: browse/create repository
- No tags, no submodules, no blame
- Primarily tested with abapGit as client
Use cases
- Automatic backup of objects
- Increased visibility over changes in system
Works with 'git pull' from command line, so all objects can be exported to a different git server if needed, guide
Use with abapGit
abapGit is your git client and the abapGitServer our server. We first have to setup the ssl connection with the root certificate of the sap system the abapGitServer is running on. After that the abapGitServer can be used like every other git server.
External libraries
| Library | Version | License |
|---|---|---|
| spinkit | 1.2.5 | MIT |
| react | 15.2.1 | Facebook BSD + Patents |
| babel-standalone | 6.23.1 | MIT |
| babel-polyfill | 6.23.0 | MIT |
| react-router | 2.5.2 | MIT |
| history | 2.1.2 | MIT |
| prism | 1.6.0 | MIT |
| octicons | 3.5.0 | MIT |
| jsdiff | 2.2.3 | BSD-3-Clause |
| jquery | 2.2.3 | MIT |
| diff2html | 2.3.0 | MIT |
| wasm-git | 0.0.4 | GPL with linking exception |
Screenshots
Others providing
Compare all 9 on the Source control for ABAP page →- abapGitabapGitA Git client written in ABAP that runs inside the system, so objects are cloned, pulled and pushed without leaving it; with no package manager in ABAP, a cloned repository is how code is distributed.community org, abapGit client written in ABAP that runs inside the system
- abap-transport-reviewabap-transport-reviewA release check inside the ABAP system that turns every transport task into a GitHub pull request and refuses to release the request until a colleague has approved it.independent, abapTransport release check gated by GitHub pull request approval
- Tools for abapGitTools for abapGitA collection of helper programs around abapGit: start variants, mass label maintenance, repository export, a scheduler for the background logic, and the SSL test tool.independent, abapHelper programs around abapGit
- ABAP remote filesystemABAP remote filesystemA Visual Studio Code extension that opens an ABAP system over ADT as an editable filesystem and exposes system tools to GitHub Copilot and external MCP clients.independent, abapVS Code extension editing ABAP systems over ADT as a filesystem
- abapgit-commitlintabapgit-commitlintA set of abapGit user exits that checks a commit message against the rules a repository defines and can block the push when it fails, with the rules validated by a separate linter service.independent, abapabapGit user exits checking commit messages against repository rules
- trm-servertrm-serverThe server-side component of TRM, installed on source and target SAP systems to expose the RFC APIs a TRM client uses to import and export transports, closed to users not listed in /ATRM/USERS.independent, abapServer-side component of TRM for importing and exporting transports
- abap-file-formatsabap-file-formatsSAP's specification for how ABAP objects serialise to files, which makes the on-disk form of an ABAP object a published contract rather than a tool's private choice.sap official, abapSAP's specification for serialising ABAP objects to files
- abap-adt-cliabap-adt-cliPulls an ABAP package to local files over the ADT REST API in parallel, and pushes edited objects back under a transport — bulk sync rather than one object at a time in SE80 or Eclipse.independent, abapCLI that pulls and pushes ABAP packages as local files over ADT
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
abaplint
Contributors
History in the atlas
- First seen.
For your agent
- Ref
artifact:larshp-abapgitserver- JSON
- /artifacts/larshp-abapgitserver.json
- MCP
- Connecting an agent