-
Notifications
You must be signed in to change notification settings - Fork 1
Workflow
The project has three branches: main
, develop
and fix/...
. The main
branch is the main branch of the project.
This branch is the main branch of the project. It is the most stable branch. All the code in this branch is tested on CI/CD pipelines. Before any releases, this is the most stable branch.
Important
- Do NOT push code directly to this branch. This branch is protected and you cannot push code directly. Instead, create a pull request on a different branch and request a review.
This branch is the development branch of the project. All the new features are developed in this branch. This branch is VERY unstable and is subject to change at any time.
As we develop new features one-by-one to avoid conflicts, we do not create feature branches from this branch, or from the main branch. When there is an ongoing pull request, you should work on the same feature that is planned to be added. When the feature is merged into the main branch, you can start working on the next feature.
This branch is used to fix bugs. When a bug is found in the main branch, or when there is an issue on the develop
branch, but it is unrelated to the current feature, you should create a new branch from the branch you want to fix and
name it fix/fix-...
.
When you create a fix branch, you should create a pull request to the branch you want to fix. After the pull request should be reviewed and merged into the branch.
The workflow of this project is as follows:
-
Create a new branch from the
develop
branch when there is a feature that is being worked on, OR start directly working on the feature that is being worked on in thedevelop
branch. -
Develop the feature in the branch. Make sure to write tests for the feature. It is okay if the tests are not passing, but make sure to ensure them working before merging the branch. If the tests fail, the pull request will NOT be merged.
-
Create a pull request to the
develop
branch. Make sure to request a review from a team member. -
Review (if you are a maintainer) the pull request. Make sure the code is clean and the tests are passing.
-
Merge the pull request into the
develop
branch. -
Repeat the process.
When the develop
branch is stable enough, i.e., the feature is ready to be released, we create a pull request to the
main
branch. The process is the same as the develop
branch.
Note
- We require at least one review for every pull request.
- If you are a maintainer, you should review the pull request only if it looks good. If there are any issues, request changes and wait for the changes to be made.
- We require signed commits. Make sure to sign your commits before pushing them.
Copyright (C) Andy Zhang, 2023-2024. Licensed under the MIT License.
- Getting the Source - Cloning the repository to your local machine
- Build the Project (CMake) - Compiling the source code of Steppable using CMake
- Build the Project (build.py) - Compiling the source code of Steppable using build.py
- Workflow - How to contribute to this repository
- Coding Style (Python) - Style guidelines for Python code in this project
- Coding Style (C++) - Style guidelines for CPP code in this project
- Directory Structure - The directory structure used by this project.
- Using the API - How to use the Steppable API
- Supported Platforms
- Performance - Some benchmarks of Steppable for reference
- Status - Status of Steppable, at a glance