Contributing
Prior to contributing to a Google Open Source repository, Google, LLC requires non-Google contributors to sign and file a Contributor License Agreement. If you DO NOT have a CLA on file your code WILL NOT be merged into this repository.
Our CLA allows open source projects adminstered by Google to safely accept code and documentation from external contributors.
For additional information, please visit our Alphabet CLA Policy and Rationale page.
flowchart LR A(Create GitHub Account) -->|Request access| B(Fork Repository) B -->|Open Clone| C(Checkout Source Code) C --> D(Make Changes) D --> E(Write Tests) E --> F(Test) F --> G(Verify) G --> H(Commit) H --> I(Create PR) I --> J[Collaborate] J --> K{Pass} K --> L[Merge] K -->|Fix Suggestions| C L --> C
- Ensure you have a GitHub account.
- Request access if the repository is private.
- Fork the repository. This makes a copy to your local GitHub account.
- Clone the newly created fork to your developer machine.
git clone <repository name>
- Make any changes or additions to the code.
- Write automated test cases.
- Verify all tests are passing and all code is commented and meets the style
guide requirements.
_
bazel test //...
runs all tests _bazel coverage //java/...
runs test coverage on a specific target. - Commit your code, and push back to your fork.
git commit add .
git commit -a
- Add comments, if you are referencing a feature or bug, please indicate the number first.
git push
- Verify the build runs in GitHub actions on your own branch. This is important, especially if you are updating BUILD or WORKSPACE files.
- From the GitHub interface, create a pull request and ensure you comment the reasons and thought processes behind the change or additions. * Understanding Pull Requests
- Once created, you will collaborate with the maintainers for QA purposes, unless they simply accept the changed and merge it.
- If not, you may be asked to make some changes and create a new PR.
The Google Retail Cloud project is divided into the following directory structure:
- conf - Configuration files
- docs - The documentation site
- examples - Examples on how to use the python modules
- google - Is the root library for all google libraries
- third-party - Is all third party data and licenses.
This project is licensed under the Apache 2.0 license. Please see the LICENSE file in the root of the project.