-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
docs: Document the process for merging pull requests #5010
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #5010 +/- ##
=========================================
- Coverage 71.4% 71.4% -0.0%
=========================================
Files 796 796
Lines 67042 67042
Branches 10863 10867 +4
=========================================
- Hits 47844 47839 -5
- Misses 19198 19203 +5 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i think this is a good improvement over what we currently have, and we can always iterate/modify this with future PRs
I squashed the previous changes, and marked the PR as no longer a draft. The first commit is the exact set of changes from prior. The second makes a couple of tweaks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor comments only
CONTRIBUTING.md
Outdated
Changes should be usually squashed down into one commit with a | ||
[good commit message](#good-commit-messages). | ||
In some cases, it is appropriate to organize the changes into | ||
multiple commits. In that situation, all of the commits should be | ||
distinct changes and have | ||
[good commit messages](#good-commit-messages). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A non-trivial PR will have more than one commit for a good reason, so I wouldn't say "should be usually squashed into one commit"; instead I suggest something like this:
The purpose of separation of a change into commits is not to reflect the history of how the author implemented the change "warts and all", instead it is to describe the change in smaller (yet well-formed) chunks, that make most sense to the reader. For this reason:
- changes should be presented in a logical sequence of a small number (ideally one, for a small change) of commits
- each commit should have a good message to explain a specific aspects of the change.
- every commit should be signed
- every commit should be well-formed (build passing, unit tests passing), as this helps to resolve merge conflicts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that there could be good reasons for multiple commits, but I think that should be an uncommon exception. Most PRs should be opened with a single squashed commit.
I have rewritten this part to reflect the rest of your suggestions.
* upstream/develop: Add xrpld build option and Conan package test (5052)
* upstream/develop: Update BUILD.md after PR 5052 (5067)
* upstream/develop: chore: Add comments to SignerEntries.h (5059) chore: Rename two files from Directory* to Dir*: (5058)
* upstream/develop: Ensure levelization sorting is ASCII-order across platforms (5072) fix: Fix NuDB build error via Conan patch (5061) Disallow filtering account_objects by unsupported types (5056)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for writing this !
High Level Overview of Change
Adds instructions to
CONTRIBUTING.md
for creating and merging PRs, and for creating and merging releases.Context of Change
This documentation arose out of the post-mortem when creating a new beta took an excessively long time.
Type of Change
Future Tasks
The PR/merge process may still have room for improvement in the future.