diff options
Diffstat (limited to 'docs/contribution-quickstart-guide.md')
-rw-r--r-- | docs/contribution-quickstart-guide.md | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/docs/contribution-quickstart-guide.md b/docs/contribution-quickstart-guide.md new file mode 100644 index 0000000..153985c --- /dev/null +++ b/docs/contribution-quickstart-guide.md @@ -0,0 +1,117 @@ +# Contributor Quickstart Guide + +## Required Software +- A way to use `git` such as Git Bash or the Windows-Linux Subsystem +- Python 3.x +- Scons +- Godot +- A programming IDE such as Visual Studio Code + +# Software Installation +## 1. [Git Bash](https://git-scm.com/download/win) +- Download and run the [64-bit Windows installer](https://github.com/git-for-windows/git/releases/download/v2.39.2.windows.1/Git-2.39.2-64-bit.exe) + +![](images/installation/git-bash-dl-page.png) + +- Leave settings as default + +![](images/installation/git-bash-finish-installation.png) + + +## 2. [Python](https://www.python.org/downloads/) +- Download the [latest version of Python](https://www.python.org/downloads/) (this includes `pip`) + +![](images/installation/python-dl-page.png) + +- Check "Add python.exe to PATH" and use the "Install Now" option + +![](images/installation/python-installer.png) + + +## 3. Scons +- Open Windows Powershell and run the command `pip install scons` + +![](images/installation/scons-install.png) + +## 4. [Godot](https://downloads.tuxfamily.org/godotengine/4.0/rc3/) +- Download Godot 4. The current version for the project will be on the [main README](../README.md) page. + +![](images/installation/godot-dl-page.png) + +- Unzip the Godot executable wherever you prefer to have it + +![](images/installation/godot-unzip.png) + +## 5. [Visual Studio Code](https://code.visualstudio.com/download) (IDE) +- For editing the C++ portion of the codebase, you may use any IDE that you are comfortable using +- [Visual Studio Code](https://code.visualstudio.com/download) is a popular choice of IDE + +![](images/installation/vscode-dl-page.png) + +# Project Setup + +1. [Go to the main repository](https://github.com/OpenVic2Project/OpenVic2) page on Github + +2. Get the link to clone the repo + +![](images/proj-setup/01-git-clone-link.png) + +3. Using Git, clone the repo: `git clone git@github.com:OpenVic2Project/OpenVic2.git` + +![](images/proj-setup/02-git-clone.png) + +4. Move into the OpenVic2 directory: `cd OpenVic2` + +5. Retrieve submodules: `git submodule update --init --recursive` + +![](images/proj-setup/03-submodules.png) + +6. Create and checkout a new git branch for your changes: `git switch -c my-cool-branch` + - You should give your branch a descriptive name of the changes you intend to make + +![](images/proj-setup/04-new-branch.png) + +7. Build the C++ portion of the project by running `scons` in Powershell + - It will take a minute to initially compile. Any future C++ changes only need to recompile the files that were changed and are much faster + +![](images/proj-setup/05-scons.png) + +8. Run the Godot executable + +9. Select the 'Import' project button + +![](images/proj-setup/06-import.png) + +10. Navigate to the `OpenVic2/game/` directory and select the `project.godot` file + +![](images/proj-setup/07-select-project.png) + +11. Select "Import & Edit" + +![](images/proj-setup/08-import-edit.png) + +12. This will open the Godot editor! Make your changes as desired and press the "Play" button in the top-right corner to run the game in-editor. + +![](images/proj-setup/09-run-project.png) + + +# Contributing your changes! + +Whenever you are ready to commit your changes follow this process: + +1. Run `git status` to show what files are new or changed + +![](images/contribution/01-status.png) + +2. Run `git add ...` for each of the modified files + +![](images/contribution/02-add.png) + +3. Run `git commit -m "A descriptive commit message"` to make a commit with your staged changes + +![](images/contribution/03-commit.png) + +4. Run `git push` to upload your current commits to your working branch + - If you're warned that your branch has no upstream branch, run `git push --set-upstream origin my-cool-branch`, replacing "`my-cool-branch`" with whatever your branch is named in [Part 6 of Project Setup](#project-setup) + +![](images/contribution/04-push.png)
\ No newline at end of file |