Source Code Organization using VS-Code for IBM i, IFS and GIT

  • Home
  • /
  • Blog
  • /
  • Source Code Organization using VS-Code for IBM i, IFS and GIT

October 2, 2025

Source Code Organization using VS-Code for IBM i, IFS and GIT

By NickLitten

October 2, 2025

IBM i, VSCode

Welcome back, fellow *cough* AS400 code wranglers and green-screen survivors!

If your IBM i source files are starting to look like that one drawer in your desk where cables go to die, it’s time for a tidy-up. Today, we’re diving into how Visual Studio Code can turn your RPGLE and COBOL chaos into something resembling order, all while shaking hands with GIT for version control that won’t leave you versioning your sanity.

I’ve put together a quick video guide to walk you through it step by step. Grab your Bitter Kas, fire up that terminal, and let’s get your smelly old source files into the IFS and Git. Let’s travel from the “wild west” to a “well-oiled west.”

Why Bother with VS Code on IBM i?

Picture this: You’re knee-deep in a project, and your 5250 Terminal (or RDi) decides it’s nap time. Or worse, you’re juggling source members across libraries like a circus act with too many flaming pins. Enter VS Code, the lightweight ninja that slips into your workflow without the bloat. It’s free, fast, and plays nice with the IFS, so you can edit on your local machine or straight from the server.

No more wrestling with PDM’s ancient scrolls. VS Code lets you open folders, not just files, meaning your entire project lives in one spot. And when GIT joins the party? It’s like giving your code a safety net woven from commits and branches, because who hasn’t accidentally turned a quick fix into a full rollback rodeo?

Step 1: Gear Up with Extensions

First things first, arm yourself. Head to the Extensions marketplace and snag these bad boys:

  • IBM i Development Pack (including Code for IBM i): The Swiss Army knife for connecting to your IBM i box. It handles outlines, syntax highlighting, and even remote debugging, so your code doesn’t ghost you mid-compile.
  • GIT Integration: Built-in, but amp it up with GitLens for that extra peek into who changed what and why. (Spoiler: It’s usually you, at 2 a.m., promising “just one more tweak.”)

Install, restart, and connect to your IBM i host.

NickTip: Save your connection details unless you enjoy typing passwords like it’s a CAPTCHA from the ’90s.

Step 2: Folder Magic in the IFS

Now, for the fun part we get to start organizing our source code like a pro librarian on caffeine (not Bitter kas). In VS Code, open the IFS folder for your project, say /home/source/myapp/. Create subfolders that make sense, not just alphabetical soup:

  • \src for your main programs (RPGLE, CL, you name it).
  • \includes for those copy members that get included more than your favorite coffee break.
  • \database for DDS or SQL definitions, because nothing says “fun” like a well-structured physical file.

Drag and drop your members in. VS Code will recognize them instantly, giving you that sweet tree view. Suddenly, finding that elusive procedure isn’t like hunting for Waldo in a sea of green text.

NickTip: Rename your source members so they are something like

PGMNAME-this_is_the_descrption.pgm.rpgle

This might seem tedious but trust me, you will thank me later.

Step 3: GIT It Done

Ah, GIT, the version control system that sounds like a sneeze but saves more backsides than a chiropractor. Initialize your repo right in that IFS folder with git init.

Add a .gitignore to ignore those pesky QRPGSRC backups, because nobody needs to commit their typos twice.

Commit often, with messages that tell a story: “Fix: Stopped the loop from eating all the CPU like it’s an all-you-can-eat buffet.” Branch for features, merge with care, and push to your remote repo on GitHub or wherever your team hides their code treasures. VS Code’s source control panel makes it point-and-click easy. Stage changes, commit, pull, push, repeat. Conflicts? Resolve them inline, no more copy-paste marathons.

Step 4: Wrapping It Up (aka ‘There is no step 4’)

Source Code Organization using VS-Code for IBM i, IFS and GIT

Congratulations, your brain now has more room for solving problems instead of remembering where everything lives.

You’ve taken then first steps towards a VS Code setup that’s as organized as your sock drawer after Marie Kondo visits but tailored for the IBM i world. Your future self will thank you, probably with a virtual high-five and fewer expletives at 3 a.m.

If this sparked some ideas, drop a comment below with your own VS Code hacks. Loved the video? Hated the video? Offended that I drunk a whole can of something I don’t like but I still plan to drink more of? Tickle that like button and subscribe for more IBM i adventures that keep the legacy alive without the legacy pains.

Happy coding!

What is Bitter Kas?
Bitter Kas, the Spanish non-alcoholic aperitif that’s basically a fizzy love letter from a herbalist’s fever dream. Crafted from a wild cocktail of over 20 herbs and spices like cinnamon, sandalwood, and nutmeg, all blended into a bittersweet lemonade that screams “refreshment” while whispering “what have you done?” It tastes weird because it’s like someone spiked your orange soda with a dash of Campari regret and a whisper of grandma’s cough syrup, starting fruity and banana-ish before pivoting to that medicinal tang that lingers like a bug you can’t quite squash. But programmers? Oh, it’s your spirit animal in a bottle—keeps the caffeine jitters at bay during those endless merge conflicts, matches the soul-crushing bite of a syntax error at 3 a.m., and best of all, zero alcohol means you wake up sharp for round two of refactoring without the plot twist of a pounding headache.

Visual Studio Code for IBM i Programmers

Visual Studio Code (VS Code) is a popular source code editor developed by Microsoft that supports various programming languages, including IBM i (iSeries, AS/400) languages such as RPG, COBOL, and CL. With the help of extensions and plugins, VS Code can be transformed into a powerful tool for IBM i programming, providing features like syntax highlighting, code completion, debugging, and more.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Join the IBM i Community for FREE Presentations, Lessons, Hints and Tips

>