Warning: This is still an experimental tool. Use at your own risk!
A utility for rebase-merging (AngularJS-related) GitHub PRs. Tasks performed:
- Verify the CLA signature.
- Fetch the PR as local branch.
- Rebase and merge the local branch into the target branch (e.g.
Closes #<PR>to the commit message (at the right place).
- Display the resulting changes for inspection (via
git log). (Experimental feature: Enhanced diff highlighting.)
- Interactively clean untracked files (e.g. auto-generated artifacts).
- Run the CI-checks.
- Push the changes to origin.
- Clean everything up (e.g. if something goes wrong).
Using in the command-line:
# Show version info ng-pr-merge --version # Show usage instructions ng-pr-merge --usage # Merge a PR ng-pr-merge 12345
You can optionally specify the GitHub repo and/or branch to merge to (by default
# Use non-default repo and branch ng-pr-merge 12345 --branch="some-branch" --repo="some-user/some-repo"
Finally, adding the
--instructions argument, will display the commands that need to be run, but
not actually do anything. This is useful if you want to run the commands yourself:
# Only show instructions ng-pr-merge 12345 [--branch="some-branch"] [--repo="some-user/some-repo"] --instructions
The following test-types/modes are available:
npm run test-unitRun all the unit tests once. These tests are quick and suitable to be run on every change.
npm run test-e2eRun all the end-to-end tests once. These test may hit actual API endpoints or perform expensive I/O operations and are considerably slower than unit tests.
npm run testRun all of the above tests (code-linting, unit tests, e2e tests). This command is automatically run before
npm run test-watchWatch all files and rerun the unit tests whenever something changes. For performance reasons, code-linting and e2e tests are omitted.