Writing developer tutorials requires a few simple tools, such as for running scripts to help you create and test your tutorials, as well as updating the tutorial GitHub repository with your files. To write tutorials, you will need to be familiar with the following:
Markdown: Markdown is an easy-to-use markup language, similar to wiki markup, for building a structured documents. It is worth 20 minutes to get familiar with Markdown.
On GitHub, however, we use GitHub Flavored Markdown, which has differences to traditional Markdown like table, code block syntax highlighting, and URL auto linking.
If you’re already familiar with Markdown but need to refresh your memory, check out the Markdown Cheat Sheet.
Our style guide provides guidance on the Markdown formatting you’ll need for tutorials.
GitHub: GitHub is a widely used source control system, and you will use it to check in and check out your files. You will be able to interact with git primarily
through VS Code, but it still will be useful for you to understand at these git operations:
fork
clone
pull
commit
push
pull request (this is an operation specific to GitHub)
GitHub Overview & Training WebcastsYou won’t have to do complex stuff with Git – and our plugin provides menu options so you can bypass it for the most part. Still, you should be familiar with how Git works – you will need sometimes to work directly with Git.
SAP Open Source Program Office Standards: the SAP Developer Tutorials system operates within SAP’s OSPO Framework. You will need to register your GitHub account with the OSPO sap-tutorials organization before authoring Tutorials.
Registration as a Content Author in the Tutorials Admin UI. You can visit the Tutorials Admin UI to determine whether you currently have access. If access is prohibited, request access via the Developer Tutorial Authors Microsoft Teams channel.
If you have deeper questions, contact Thomas Jung.
If you are given permission manually, you will receive an email to join the sap-tutorials organization.
Invitation
If you lose the email, you can always go to your notifications on GitHub by clicking …
Notification icon
… in the upper right and accept the invitation there.
NotificationAccept
Alternatively, you can go to the sap-tutorials organization on GitHub and accept the invitation there.
Steps
Introductions
The goal of this tutorial is to configure your machine with all the tool needed to create and maintain tutorial content.
Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Subsequent set up and tutorial management steps will use examples from Visual Studio Code; however, any markdown editor can be used to author and revise tutorials.
Git lets you interact with our GitHub repositories.
NOTE: This is different from GitHub Desktop.
This step is optional. VS Code will provide access to git and GitHub. Run installer with defaults.
Step 2Identify the Tutorials Repositories used by your team
+
The tutorial system operates using two tiers of
GitHub repositories; one for QA and one for Production. We’ll start by cloning the appropriate QA repository. For historical reasons, QA repos will always have “-Contribution” suffix. There are many QA repositories, many used by specific SAP product teams (see the table below). Most teams operate from the “Tutorials-Contribution” QA repo – consult other members of your team if you are unsure which is appropriate.
The companion Production repository will have a URL with the “-Contribution” suffix removed.
Make a note of URLs, as we’ll reference them in the next steps.
Step 3Configure VS Code
+
You may now switch to this tutorial-SAGE Getting Started - we recently created a custom VS Code extension designed specifically to streamline Tutorial authoring. Pick up the steps in that Tutorial. You may safely skip the remaining steps below.
Step 4Manually Create a VS Code Workspace
+
Create a “sap-tutorials” directory in your local home directory. We’ll do all work there.
Select “File > Open Folder…”; select the “sap-tutorials” directory in your home directory.
Select “Save as Workspace…”; navigate to the “sap-tutorials” directory and name the new workspace something like “my-tutorials”. Click “Save”.
On future VS Code sessions, you can restore your tutorials working environment quickly by selecting “File > Open Recent >” and the selecting this “my-tutorials” Workspace.
IMPORTANT FOR MAC USERS:
Cache your GitHub credentials by following the instructions here.
Step 5Update GitHub account
+
Go to GitHub, sign in, and open your profile settings.
Open GitHub profile
Make sure your name is listed properly, and add a picture. Your GitHub name, and your picture, will appear as the author when you publish tutorials. Also fill in your company.
GitHub profile settings
Make sure to verify your email address and set it as your primary email address. This will be the email to identify your commits.
Set email address
Step 6Set up SSH
+
To work smoothly with the plugin and to enable 2-factor authentication, it is best to set up the connection between your laptop and GitHub via SSH.
IMPORTANT: Do NOT use a passphrase when setting up SSH.
Press Enter and leave blank both the directory and the passphrase.
2 files are generated in the .ssh directory of your user folder – id_rsa and id_rsa.pub, private and public keys. For me, the proper/default directory was the C:\Users\I031617.GLOBAL\.ssh folder.
If you want to check the SSH keys you have, run the command: ls -al ~/.ssh
Copy your public SSH key (i.e., id_rsa.pub) to your GitHub profile.
On GitHub, go to profile icon | Settings | SSH and GPG keys, and then click New SSH Key.
Enter any title and your public key.
Step 7Clone the QA Repository
+
If you installed the Sage VS Code Extension, this step will have been completed for you during setup - you may skip this step here.
In VS Code, select “View > Command Palette…”
Select “Git:Clone”. Enter the appropriate URL selected from the table above (see (1) below). Note that the “Tutorials-Contribution” repository is quite large, if that’s the repo you are cloning, it will take several minutes to complete.
Cloning the QA repository
Step 8Fork the companion Production repository
+
Using a browser, visit the Production repository URL appropriate for your team; for example, sap-tutorials/Tutorials repository. In all cases, the Production repository has no -Contribution suffix.
Click “Fork”.
Fork
Visit your account home page on GitHub, https://github.com/\
The Fork operation created a new repository in your account with the name corresponding to the Production repository. You can verify that by visiting the “Repositories” tab on your GitHub Home Page. In git terms, the original repository is the “origin” and your fork is a “downstream” repository. We only need to fork the Production repo, and we only do that to enable the use of “Pull Requests” and review of changes before they are published in Production.
Fork in your account
Step 9Clone Production fork
+
If you installed the Sage VS Code Extension, this step will have been completed for you during setup - you may skip this step here.
Just as we cloned the Tutorials-Contributions repository, we’ll clone the Tutorials repository.
IMPORTANT: While you cloned the official QA repository directly from the sap-tutorials account, you’ll now clone the Production repository from the forked repository that you just created.
In VS Code, select “View > Command Palette…”
Select “Git:Clone”. Enter the appropriate Production URL selected from the table above. Note that the “Tutorials” repository is quite large - if that’s the repo you are cloning, it will take several minutes to complete.
Step 10Set author name/email in Git
+
The author listed for a tutorial is the name on the last commit by the author who first committed the tutorial. So you need to set up the name that should appear for your commits.
Generally, setting these in the global settings is enough, but a bug in Atom sometimes requires them to be set in the individual repo you are working in.
Open a command prompt ( Win+X, then press A ), then run the following command, replacing FIRST_NAME and LAST_NAME with your name, and specifying your email:
Open a command prompt, and change the directory to the directory with your QA repo (e.g., %HOME%\sap-tutorials\GitHub\Tutorials).
Run the same commands as above.
If ever you need to change the name that appears at the top of a tutorial, add the following metadata at the start of the Markdown file for that tutorial.
Step 11Sign the Contributor License Agreement for the appropriate Production repo
+
SAP Tutorials operate within an open source framework established by the SAP Open Source Program Office and SAP’s Legal team.
To merge pull requests to any production repository (e.g., Tutorials), you must sign the Contributor License Agreement (CLA). You can do this when you submit tur first pull request, or you can do it now.
The CLA is signed for on behalf of your GitHub account, specifically for the primary email associated with your GitHub account. If you make commits that have a different email address associated with them, the CLA is not considered signed for those commits.
Step 12Added Remarks
+
VS Code’s Explorer View allows you to create new folders and files. Right click on the “tutorials” folder and select “Create Folder…”. Enter the tutorial “slug” name you have selected.
Within that new folder, create the Markdown file: Right-click the new folder and select “Create File…”. Filename should be “.md”, where \ matched the name of the parent directory. This is important: there should be exactly one “.md” file in this folder and its basename must match the name of the parent folder. This becomes the source file for the tutorial. Any unique images that you embed in the tutorial should be placed in the folder, as well.
- Review VS Code's Markdown editing capabilities - VS Code provides a [rich set of features to support Markdown editing](https://code.visualstudio.com/docs/languages/markdown). This includes [Markdown Preview Pane](https://code.visualstudio.com/docs/languages/markdown#_markdown-preview). This capability will allow you to view most, but not all of elements of your Tutorial code.
- In addition to IDE preview, there's also a richer Tutorial preview capability available. We will describe that in just a moment.
### Plan your groups/missions
Before writing any tutorials, you need to do some planning with your stakeholders:
What high-level missions do you want to create over the next 6 to 12 months?
How do you want to break down the content into missions, groups, and tutorials?
Before starting to write, you should have the following information for each mission, group and tutorial:
Title
Description
Estimated time to complete
You’d be surprised, but working just on the titles, descriptions, and time will help you author better tutorials.
Share feedback on this tutorial or join the conversation in SAP Community.
Submit detailed feedbackDiscuss in Community
Steps
Step 1 of 12
1. Install Required Software2. Identify the Tutorials Repositories used by your team3. Configure VS Code4. Manually Create a VS Code Workspace5. Update GitHub account6. Set up SSH7. Clone the QA Repository8. Fork the companion Production repository9. Clone Production fork10. Set author name/email in Git11. Sign the Contributor License Agreement for the appropriate Production repo12. Added Remarks
Joule is an AI assistant. Generative AI may produce inaccurate, incomplete, or biased information. Always verify important details before acting on them.
Conversations are sent to SAP-hosted large language models for processing. Do not include personal data, credentials, or confidential information in your messages.
Joule's responses are based on the SAP tutorial catalog and may not reflect the latest product changes. For authoritative guidance, consult the linked tutorials and official SAP documentation.