-
Notifications
You must be signed in to change notification settings - Fork 77
Git process for contributing to Scilla
Anton Trunov edited this page Jul 8, 2022
·
9 revisions
These instructions are for the Scilla team and may not apply to community contributions.
- Create a new branch to work on.
- If the feature / bug is associated with a GitHub Issue, prefix your branch name with the issue number. For example
385_cashflow_adts
. - If there is no associated GitHub Issue, don't worry about prefixing anything. Just choose a meaningful name for the branch
- If the feature / bug is associated with a GitHub Issue, prefix your branch name with the issue number. For example
- After the bug / feature is complete, create a pull request on GitHub.
- If the PR has an associated Issue and if merging the PR should close the Issue, add the comment "resolves #XYZ" in the PR description (where XYZ is the Issue number). This will automatically close the Issue once the PR is merged.
- Features and fixes should be in separate PRs. Please do not mix these "while we are at it". Mixing features and fixes makes it harder to cherry-pick commits for bug-fix releases.
- Fix formatting issues. A Makefile target is provided to run
ocamlformat
and make the code standard conformant.Runmake fmt
to automatically achieve this. Non-conformant code will be flagged as errors by the CI. - Reviewers will be added automatically basing on
.github/CODEONWERS
file - Once the PR is approved by a reviewer you can merge it. IMPORTANT: When merging the PR, be sure to select "Squash and Merge" in the GitHub UI.
- In the rare scenario that you have another feature branch forking from the one you're about to merge, and want to avoid conflicts that will arise out of "squash-and-merging", you may do a normal merge. This is NOT RECOMMENDED.
- Once your PR is merged, delete the branch you were working on. There is a button to delete the branch right after you merge. If you missed it, you can go to "branches" on the main repo page and delete it there.