Thanks @Cheng Pan <cheng...@apache.org> for introducing this nice tool!
Keyong Zhou Cheng Pan <pan3...@gmail.com> 于2023年6月2日周五 22:38写道: > Hi Celeborn Committers, > > A PR merge tool `dev/merge_pr.py` was added to the Celeborn git > repo[1][2], it aims to simplify the PR merge and backport process, and > improve the git commit history. > > AFAIK, this tool is originally from Apache Parquet, then, it was borrowed > and modified by Apache Spark, Apache Kyuubi. > > Compare with the current way we are using, use GitHub squash to merge PR, > this tool has the following pros: > > - squash all commits into one, this is the same as GitHub squash, but also > fix the PR title in canonicalize format: > [CELEBORN-XXXX][LABEL] Title of the pull request > - it’s an interactive script, the committer just needs to follow the > prompt and react with y/n, then can complete the PR backport, > JIRA assignment, JIRA fixed version update > - reserve the author and committer information in the git history, the > GitHub squash always marks the committer as > GitHub <nore...@github.com>, which is really bad. > - reserve the PR description as the git commit message body, again, please > fill in the PR description seriously :) > > Some setup procedures are required to use this merge tool: > > 1. invoking it at the celeborn git project root dir > 2. naming the upstream repo as “apache”, you can check it by `git remote > -v`, the desired output should be like > apache-celeborn git:(main) git remote -v > apache g...@github.com:apache/incubator-celeborn.git (fetch) > apache g...@github.com:apache/incubator-celeborn.git (push) > 3. export environment variables ASF_USERNAME ASF_PASSWORD which is used > for JIRA authentication > 4. export environment variable GITHUB_OAUTH_KEY which is used for GitHub > authentication. > You can create an OAuth key at https://github.com/settings/tokens > 5. install python JIRA dependencies by `pip install jira` or `pip install > -r requirements.txt` > > As an example, [3] is merged by this tool. > > Please let me know if you have any questions or concerns w/ this tool. > > [1] https://issues.apache.org/jira/browse/CELEBORN-623 > [2] https://github.com/apache/incubator-celeborn/pull/1539 > [3] > https://github.com/apache/incubator-celeborn/commit/67762783d0d51acb147f35e9a59e2bfec48ec04b > > Thanks, > Cheng Pan > > > > >