Wiki

Clone wiki

AAO Game Creation Engine / AAO development workflow

In order to contribute to AAO, you will need to rely on the "pull request" mechanism, which will allow the AAO team to review and integrate changes from one of your branches into the AAO development branch.

The suggested workflow is as follows :

Create a personal fork

If you are logged in with a bitbucket account, you will see an "Actions" button under the AAO Engine repository's logo. Select "Fork" in this list of actions.

This will create a personal fork of the AAO code base : this means a private copy for your own usage, on which you can work freely without impacting other developers.

Bitbucket makes it simple to synchronise the main repository with your fork so that you can easily get the latest changes.

For each development, create a new branch on your fork

The main AAO repository comes with two branches, "master" and "develop", that you will also see on your fork. You should not commit on master (I will not accept any pull request on master anyway), and in fact it is better if you do not commit on develop directly either.

The best thing to do is to create a new feature branch, from develop, for each development (bug fix of new feature) that you wish to do. For example, if you wish to work on integrating AAI Logic into AAO, you can create a branch dev-aai-logic.

To create a branch, go to the "Actions" menu while browsing your fork, and select "Create branch". Then, select to branch from "develop" and feed in the name of your new feature branch.

The reason to do that rather than work directly on develop is if you want to work on several things in parallel : you will be able to open different pull requests (one for each of your feature branches) , and we will be able to review them and accept them in any order.

Develop on a local clone of your fork

From your fork's "Actions" menu, you can find the command to "Clone" your fork on your computer. This creates a working copy of the code on your computer. You should then checkout the branch on which you wish to work (in above example, dev-aai-logic), ie load it into the working directory. You can then make changes and commit them as in any git repository, push these commits from your clone back into your fork whenever you want.

Open a pull request

To send your changes from us for review, you need to open a pull request from your fork's feature branch into AAO's develop branch. Through your fork's "Actions" menu, select "Create a pull request". On the left side, select your feature branch on your fork, eg. dev-aai-logic. On the right side, select the AAO main repository's "develop" branch. Then type a title and a description for your changes.

Once the pull request is open, we will be able to review it and comment on it. If we ask you to make additional changes before accepting the pull request, it's simple : just commit these changes on the corresponding feature branch on the fork, and they will be appended to the pull request automatically.

Updated