× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 7/12/2016 8:39 AM, Paul Bailey wrote:
Has anyone had any success converting a set of source files in libraries on
an IBM i to a source controlled environment using Git?

I have an OSS RPG project on Github.
I also have a test Git repo on IBM i.
I also have a test Git repo on my PC at work and another on my PC at home.

All of these Git repositories contain RPG, CL, and DDS source. I am
forced by circumstances (SEU colleagues) to keep my 'source of record'
in source physical files. I use RDi and the eGit addon to push and pull
from my Git repo on my PC to the Git repos elsewhere.

I am a one-person Git user. I share code with, er, myself.

If so:
- How did you create the default repository at the start?

git init from Cygwin on a directory mapped to IBM i IFS.

- How do you compile the objects on the i? (I understand DDS might be a
problem unless the source member is copied back to the i)

RDi with eGit and iProjects View.
Do a pull to my iProject. This will pull the source from whatever remote
Git repo (including Github, IFS, local PC, whatever) to the IBM i Project.

Then a Remote Actions > Push Selected. This will send the source from
the iProject on my PC to source PFs on the IBM i side.

Then by Remote Actions > Compile. This issues standard CRTxxxSRC
commands - the same can be done from PDM or a command line at this point
because the source is now in the QSYS.LIB file system, just like it was
in 1990.

- The source shouldn't be hanging around on the i after compile, so do we
need to clean up source files after every compile?

If you want to have the 'source of record' be one of the Git
repositories, you probably want to create a custom compile / create
command that will do all the Git work into a temporary / QTEMP source
file. Then, cleanup is more or less automatic.

- When we need to debug the objects on the i, how does the debugger find
the source?

DBGVIEW(*LIST) or *SOURCE works for me.

I have os v6.1 and RDi v9.5.x at my disposal, possibly upgrading the os to
v7.1 in the "near future". We currently have all our Git repos on network
storage and (unless otherwise warned) I intend to do the same with this.

I have git on IBM i in /opt/freeware/bin, dated Mar 13 2012. git
--version reports git version 1.7.9.4. I must have compiled it myself,
because the version doesn't match anything available from Perzl:
http://www.perzl.org/aix/index.php?n=Main.Git


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.