[OJS] upgrade to using Github and CLI

I currently have a local repository that I’ve managed using the pull download of a .TAR.GZ file that I then edit on our server. Moving into this year, I’m re-configuring a number of legacy software pieces to work better through CLI (due to situations that would lead to working remotely). I’m running into a few questions that I don’t have a great place to find answers and I’m hoping someone can enlighten me.

Currently, I’m brushing up on my git commands and doing more using both that as well as composer with another project. Right now, I have my local repository cloned and pushed into my Github remote location. What I would like to do is the following:

  1. Pull the most recent stable version of OJS - I’m pretty sure this is OJS
  2. The command would be git rebase --onto 3_3_0-8 3_3_0-7 if I understand the READ.ME document correctly in order to merge the new file updates onto my current repository.
  3. Merge the changes and cleanup the conflicts (I have KDIFF3 and will use that)

Since I’ve never done this, I don’t even know how to get started. Do I create a new branch for the upgrade, clone the stable version of OJS from pkp/ojs and then merge the two branches from there? If that’s the case, then I think I can manage that but if it’s not, since that’s my only thoughts, I’d like to hear what the best practices are. I don’t want to get into bad habits.

Thank you.

You may find this topic useful: Running production OJS site with Git for Dummies (like me)

Do you have local changes made on top of the original code?


On an old production site, yes, but we rebuilt our OJS database and site after a corrupted upgrade from last year so everything is the base install.

From what I could tell on that link, it looks like I’m cloning the stable branch from pkp/ojs onto my local repository and then setting up a new instance. If we already have an instance, I feel like it should be easy enough to clone from the stable branch to a local branch, rebase from pkp/ojs onto master (the install that we have), resolve the conflicts, and go from there. Since I’ve never done it, though, I don’t know if that’s the correct methodology.


Found my answer to my question in another link - Upgrade from github - #4 by jnugent

It looks like I’m actually setting up a new installation, using a copy of my database with the Github installation to perform the upgrade, and then using the new installation as the live site.

Thanks for your assistance!