diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..53fbcdc --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,34 @@ +## Description of the change + +> Please include a summary of the change and which issues are fixed. +> Please also include relevant motivation and context. + +## Type of change + +- [ ] Bug fix (non-breaking change that fixes an issue) +- [ ] New feature (non-breaking change that adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) +- [ ] Maintenance +- [ ] New release + +## Related issues + +> Shortcut stories and GitHub issues (delete irrelevant) + +- Fix [SC-] +- Fix #1 + +## Checklists + +### Development + +- [ ] Tests pass locally +- [ ] The code changed/added as part of this pull request has been covered with tests +- [ ] All tests related to the changed code pass in development + +### Code review + +- [ ] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached +- [ ] "Ready for review" label attached to the PR and reviewers assigned +- [ ] Issue from task tracker has a link to this pull request +- [ ] Changes have been reviewed by at least one other engineer diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..5a8aaa6 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,7 @@ +# Change Log + +## 1.0.0-beta.1 +- Add CHANGELOG.md, CONTRIBUTING.md and pull_request_template.md + +## 1.0.0-alpha.1 +- Create plugin to upload mappings file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..f283ca0 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,55 @@ +# How to contribute + +First of all, thank you for wanting to contribute to Rollbar! We want to keep it as easy as possible to contribute +changes that get things working in your environment. There are a few guidelines that we need contributors to follow so +that we have a chance of keeping on top of things. + +## Making Changes + +1. [Fork](http://help.github.com/forking/) on GitHub +1. Clone your fork locally +1. Configure the upstream repo (`git remote add upstream git://github.com/rollbar/rollbar-gradle-plugin`) +1. Create a local branch (`git checkout -b myBranch`) +1. Work on your feature +1. Rebase if required (see below) +1. Push the branch up to GitHub (`git push origin myBranch`) +1. Send a Pull Request on GitHub + +You should **never** work on a clone of main, and you should **never** send a pull request from main - always from a +branch. The reasons for this are detailed below. + +## Handling Updates from Upstream/Main + +While you're working away in your branch it's quite possible that your upstream main (most likely the canonical +rollbar-java version) may be updated. If this happens you should: + +1. [Stash](http://git-scm.com/book/en/Git-Tools-Stashing) or commit any un-committed changes you need to +1. `git checkout main` +1. `git pull upstream main` +1. `git checkout myBranch` +1. `git rebase main myBranch` +1. `git push origin main` - (optional) this makes sure your remote main is up to date + +This ensures that your history is "clean" i.e. you have one branch off from main followed by your changes in a +straight line. Failing to do this ends up with several "messy" merges in your history, which we don't want. This is the +reason why you should always work in a branch and you should never be working in, or sending pull requests from, main. + +If you're working on a long running feature then you may want to do this quite often, rather than run the risk of +potential merge issues further down the line. + +## Sending a Pull Request + +While working on your feature you may well create several branches, which is fine, but before you send a pull request +you should ensure that you have rebased back to a single "Feature branch". We care about your commits, and we care about +your feature branch; but we don't care about how many or which branches you created while you were working on it +:smile:. + +When you're ready to go you should confirm that you are up to date and rebased with upstream/main (see "Handling +Updates from Upstream/Main" above), and then: + +1. `git push origin myBranch` +1. Send a descriptive [Pull Request](http://help.github.com/pull-requests/) on GitHub - making sure you have selected + the correct branch in the GitHub UI! +1. Wait for someone at Rollbar to merge your changes. + +And remember; **A pull-request with tests is a pull-request that's likely to be pulled in.** :grin: