...
Unfortunately there’s no self-service way to merge accounts at this moment. If you wish to merge your personal JIRA account with your newly created ASF LDAP account, you need to file an INFRA JIRA ticket (similar to this one) to have your accounts merged. Ideally, you should be able to login with your Apache id to Jira and Confluence Wiki.
Wiki edit permissions
You If you decide to not merge your personal and ASF JIRA account then you might find out that you do not have edit permission to the Apache Flink wiki page. Unfortunately, the Apache Flink Wiki page editing privilege is currently still managed separately from the ASF LDAP permission. If you find yourself missing wiki edit permissions, please follow the normal procedure: email your JIRA account (preferably your ASF LDAP account) to dev@apache.flink.org in order to request for permission.
...
- Committer role according to bylaws
- How To Contribute, in particular reviewing pull requests
- Development process, in particular merging pull requests
- All merged contributions should be verified to
- comply with licensing
- comply with code style guide
- be sufficiently documented before the release
- not introduce performance regressions, check benchmarking (especially performance critical changes, e.g. code paths executed per record, state entry etc)
- Writing a blogpost
- Check this guide and any missing useful information
GitBox vs. Github
Flink project is currently hosted on GitBox. So there are two ways to setup your fetch/push privilege as committer.
NOTE: Due to recently found synchronization issue between GitBox and Github repositories, committers should only use Github repositories for pushing commits.
Using Github
Make sure you following the setup to link your Github account with your ASF account.
using GitHub command line
Use the following remote as your push/fetch:
Code Block | ||||
---|---|---|---|---|
| ||||
> git remote add <remote_name> git@github.com:apache/flink |
For example, if you are setting up a remote "github", your setup should look like this:
Code Block | ||||
---|---|---|---|---|
| ||||
> git remote -v
github git@github.com:apache/flink (fetch)
github git@github.com:apache/flink (push) |
using GitHub web UI
In addition to the command line, you can also use web UI to merge pull requests, either using the "Squash and merge" button or "Rebase and merge" button.
For the "Squash and merge" option, the pull request's commits are squashed into a single commit and merged into the master branch using the fast-forward option. This is often used to squash fixup commits thus can retain the original changes with a clear Git history.
For the "Rebase and merge", all commits from the PR are rebased and added onto the master branch. This is often used when we want to preserve all the commits, i.e., preserve "refactor" and "feature" differentiation in history rather than squash everything.
Using GitBox
Using GitBox, you are not required to link your Github account using the utility. Your remote setup should look like the following:
Code Block | ||||
---|---|---|---|---|
| ||||
> git remote -v gitbox https://gitbox.apache.org/repos/asf/flink.git (fetch) gitbox https://gitbox.apache.org/repos/asf/flink.git (push) |
Notices for merging a pull request
- Always merge the code on condition that tests are passed.
- Squash fixup commits thus we can retain the original changes with a clear Git history. However, it's important to notice that some pull requests often consist of multiple commits where we want to preserve "refactor" and "feature" differentiation in history rather than squash everything.
- Check the commit message. Ensure that the Jira id and components are right, e.g., `[FLINK-XXX][docs] XXX`. Ensure the title is clear and meaningful.
- Once the code has been merged, you should pay attention to the Flink build and check if everything is right. You can subscribe to the build mailing list to get notifications. Create a Jira if something is broken on the master branch.