Skip to Content

I am sure the open source project abapGit and the development environment Abap in Eclipse are already well known, therefore I skip the introduction of them. 

For commiting your ABAP code from Eclipse to a GIT repository currently the following steps are necessary:

  1. Open an SAP GUI (either as a particular instance or within  ABAP in Eclipse)
  2. Start the transaction ZABAPGIT
  3. Select a specific ABAP package
  4. Peform the desired Git commands

The first three points are always identical, thus they are perfect candidates to be automated.

The first two points I have already completed but with point 3 … I am struggling, but to this point a bit later.

To get the first two points working automatically is now quite easy. The only necessary step is to go to the Eclipse marketplace and install or update the free plugin ABAP Continuous Integration. After completing  this installation you get an additional menu entry: abapGit, invokable also with the Shortcut Ctrl+Alt+K. Of course abapGit has to be already installed before.

Pushing the menu item or pressing the shortcut opens abapGit for the currently selected project in the project explorer.
Currently an ABAP development package or an child object of this package has to be activated to get the shortcut and the menu item working but I will investigate how to get the functionality available for the whole workspace.

Well if you are constanly working with the same package or the clicks to change the package do not bother you … perfect – the new menu item will save you hopefully a lot of time when calling abapGit out of the Eclipse environment.

If you would like also to get also the package change automated, you are welcome to join the abapGit community package change challenge 😉 .Any idea, hint or anything else helpful is welcome – lets solve this challenge together.

What I tried already:

Approach 1: Changing the package with an ADT rest service.

I have already created a prototype with the ADT SDK to get the package name and the username to the ABAP backend. See. ABAPCI_ABAPGIT – connection from Eclipse to abapGit. The only thing that is missing is how to trigger the package change on the abapGit side.

Refreshing the abapGit Transaction, or reloading it?

Details for the ADT SDK:
https://blogs.sap.com/2014/08/31/creating-a-abap-in-eclipse-plug-in-using-the-adt-sdk-part-2/
https://archive.sap.com/documents/docs/DOC-40668

 

Approach 2: Calling the ZABAPGIT transaction with parameters

With the ADT SDK it is also possible to open a transaction with parameters. On thing todo with this approach is certainly adapt abapGit to consider this parameters. The harder part with this approach is maybe to not loose the already inserted git repository credentials.

 

Approach 3: Ideas welcome

To report this post you need to login first.

4 Comments

You must be Logged on to comment or reply to a post.

  1. Thomas Fiedler

    Hi Andreas,

    we are already working on a native abapGit Integration into Eclipse.

    Colleagues would be more than happy to get you on board.

     

    Regards,

    Thomas.

    (12) 
    1. Andreas Gautsch Post author

      Hi Thomas!

      Good to hear that abapGit will be integrated also into Eclipse. Of course the approach shown in this blog will be obsolete starting from the time the native integration will be available.

      Would be a pleasure for me to get involved in the development as I am already very curious how it will look like.

      Have a nice weekend, Andreas

      (0) 
  2. Paul Hardy

    I have installed the plug in, but the menu option does not seem to be there on any of the context menus and CTRL+ALT+K does not do anything.

    There is a little button at the top which calls up the CI view, with a “Java Nill Pointer” error as well. That is better than last time I tried a month ago where I got the Eclipse equivalent of a short dump. I installed an update to your CI plug-in since then.

    In that view there is a button with “Launch abapGit” and a red icon to do the same. Neither does anything when I click them, and yes I do have abapGit installed on the SAP system!

    Also how do you assign a colour to an SAP system? I cannot see any option to do that.

    I am very impressed with what you are trying to achieve here, by the way.

     

     

     

    (0) 
    1. Andreas Gautsch Post author

      Hi Paul!

      The Java Null Pointer does surprise me a bit, could you please tell me if you get the error also with the latest version 0.3.12 and if yes maybe post the stacktrace.

      Well if everything is working like expected the current behavious should be:

      The menu option currently is only shown if you have marked a package or a development object within a package.  If clicked or respectively using the shortcut while the project explorer item is still marked abapgit should open for the destination to that the package/object is assigned.

      I fixed the “Launch abapGit” button and the function behind the Git-icon, I uploaded version 0.3.12 to the Eclipse marketplace just now. The button and the icon only work if you have set the development  project in the Eclipse settings: Preferences -> ABAPCI -> The first text box should include the name of your DEV system displayed in the project explorer.

      To assign a color to an ABAP project open the View “ABAP Colored Project” – with a right button click you can add a project and assign a color – although this feature currently does not support all development objects.

      Thanks for your appreciation, I thought it is easier to tame a monster like Eclipse although ADT facilitates a lot, but I think I should not try to tell you something about monsters 😉

      (0) 

Leave a Reply