Contributing

Interested in becoming part of Torque's development? Great! Torque thrives off the contributions of its enthusiastic community, and we always welcome new members. Here's a few things you'll need to know before you dive in.

Branches

There are two main branches: master and development. The master branch contains the current stable version of Torque 3D. The development branch is where all work is done prior to it being tested and moved to the master branch as determined by the Steering Committee.

Using the development branch

To start using the development branch you will need to create your own fork of the repository:

  1. Create your own fork of the Torque 3D repository by using the Fork button on GitHub.
  2. Clone your Torque 3D fork to your computer.
  3. Check out the development branch from the Git command line: git checkout development
  4. Add an upstream remote: git remote add upstream https://github.com/GarageGames/Torque3D.git

To pull changes from the GarageGames/Torque3D development branch into your developer fork: git pull upstream development

To submit your changes back to the GarageGames/Torque3D development branch, use the Pull Request page from GitHub to make a request from your fork into the development branch. Note that we highly recommend you not make any changes in the development branch, but create a new branch for features you'd like to pull request, and a branch for all changes you don't want to contribute back to the main engine (for example a my-game branch). This makes it easier to contribute, and also easier to get the latest changes from the main repo!

How To Submit A Pull Request

The How To Submit A Pull Request Tutorial page is designed to give a quick look at the basics of how to properly prepare and submit a Pull Request

Code style guidelines

Please refer to the Code Style Guidelines if you want to contribute code back to the main engine. A consistent codebase is good for everyone!

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License