-
Notifications
You must be signed in to change notification settings - Fork 33
Contributing to to PAT Track
Hello! This page is for developers wanting to contribute to the code.
Everyone must read the LICENSE before deciding to contribute to the code.
In addition, incoming contributers should contact one of us before contributing to the project so we can add you to the team!
In addition, if you want to directly communicate with us, please notify us and we'll give you an invite to join our Slack Channel.
After you have been given permission, you must have the following:
- Retrieve API Keys and set them in
</path/to/repo/root>/secrets.properties
.... see secrets.example.properties as a template-
NOTE: Make sure to store these keys securely as
secrets.properties
may be deleted by git automatically as you change branches -
Port Authority TrueTime API Key
- requires a Port Authority TrueTime Account
-
pat_api
insecrets.properties
-
Google Maps API Debug and Release Keys
- Debug Key ->
google_maps_api_debug
insecrets.properties
- Release Key ->
google_maps_api_release
insecrets.properties
- Debug Key ->
-
For older contributors: You must delete your old Google Maps res values... Locations:
-
/app/src/debug/res/values/google_maps_api.xml
-> Debug Key -
/app/src/release/res/values/google_maps_api.xml
-> Release Key
-
-
NOTE: Make sure to store these keys securely as
- install Android Studio
- install Oracle Java JDK 8 -> Linux users, please use a package instead to install it
- Install From the Android SDK using Android Studio
- Android SDKs from API 16 to present
- All Google Support libraries
- Latest Google Play Services
- Open the Project as an "Existing Project"... You must follow the instructions below; otherwise, Android Studio won't open the project correctly
- File -> Open
- go to repo root
- open it using the repo's
settings.gradle
There are two release branches, and the rest are considered code branches, where code is updated to. All code that will be put into the default branch.
It is in best practice that changes to the app (bugs and features should be on its own branch.
- New code should be branched from the default branch; otherwise, we will reject everything from the branch.
- Feature branches should stay up to date (merged) with the latest from the latest default branch pull.
- Code that is ready, as in considered to be at least in beta and has been merged with the default branch, should be pull requested into the default branch.
- Code must be approved to be merged into the default branch with a comment confirmation to merge the feature.
- When the feature is done, it is recommended to close the branch.
Default Branch Guidelines
- It is discouraged to make changes directly to the default branch.
- All features must be branched from here.
- All code from features will be...
- At least in the beta stage
- Must be pull requested
- Must be approved from the pull request
- After the above is met, the changes must be merged.
From here, when a release is ready, code will be built and then merged into the real_beta branch.
Release branches are for Play Store releases.
- master - This has the main code for release and perfectly stable versions of the app.
- tags -> as of 5.0, we will be using tags based on the master branch for releases.