Get into Git!
Heads up to anyone interested in getting to know Git that there’s a new openSAP course starting next week: SAP Cloud Platform Version Control with Git
For those who have no idea what Git is, it’s a source code management system developed by Linus Torvalds, creator of the Linux Kernel. It is pretty much the de facto standard for distributed authoring, even Microsoft have moved their entire Windows source into a Git repository.
Er.. so why am I posting about this under ABAP Development?
Well, a couple of reasons:
The world is moving to Git, and ABAP too.
On the ABAP front, the revolution has already started, spearheaded by Lars Hvam‘s abapGit project, so Git is already important for those using any open source ABAP projects or wanting to publish code. At the time of writing, a search for “ABAP” throws up over 1,400 repositories on GitHub.
I believe with ABAP moving to the Cloud, this will also become the standard for SAP Cloud ABAP (or whatever it will be officially called), particularly since Git is already integrated into the SAP Cloud Web IDE.
For me personally, I progressed beyond copy-pasting source from GitHub (the course explains the difference between Git and GitHub in week 0) to using abapGit some time ago. Like Git itself, abapGit can be a bit daunting and I am still a user who does what I need to do with it and kinda get by. But I’d like to know more so this course was the perfect opportunity and I jumped right in.
The course already kicked off on Tuesday as Week zero, covering all the preamble: what is the course all about, who is it for, what is Git, what is GitHub, getting a trial account set up, etc., and I really liked what I saw and am eager for the next instalment!
Even though it’s based on SAP Cloud Platform, it is very much practical and the course will use plain ol’ HTML as examples, so the content applies equally to Java, ABAP or whatever. I am hoping to take what I learn and translate it into abapGit – who knows, there may be another blog or two forthcoming…
Pretty much everybody likes free code to make their lives easier, and if it makes it easier to get open source, this should be useful for many of you.
But I’m hoping for an even bigger benefit: If more people are familiar with Git, then it should be easier for people to contribute to open source or publish their work on GitHub and we should see more open source contributions all round.
So get on board, I am certainly looking forward to the journey!
Git is indeed an important tool.
However, I think that it would be productive for ABAP only when a technical solution for local (active) branching is implemented.
That's a valid point when you're talking about customer own projects, and is a topic I've discussed with colleagues before. One theory is that each developer should have their own (virtual?) system for this to work.
But I've also seen it being used effectively as a source code tracking and monitoring tool for ABAP. e.g. It makes it easy to see all the deltas for a given day.
I can see this sort of setup being feasible with ABAP in the cloud, no idea if/how that is going to happen.
However, Git is already invaluable for the hundreds of open source projects out there. SAPLink was OK but still fairly manual. CodeExchange... well lets not go there. abapGit really does finally enable proper collaboration on a major project - abapGit itself is a perfect example. But here we're back to what I mentioned at the start: it works because everyone is working on their own system.
If Git, then Tower 🙂