On Fri, Sep 12, 2025 at 03:54:23PM +0800, Yumei Huang wrote:
Signed-off-by: Yumei Huang
Nice first draft, but I think it will need some further work before being ready to merge. Here are some things that are probably worth adding: * Incorporate the information in the "Contribute" section of README.md (and change README to reference this document) * Code style conventions (kernel net-code) * The meaning of the "Signed-off-by" line (see kernel docs for full details or [0] or [1] for some simpler examples * Reference test/README.md for information on running the testsuite (that also needs updating) * Add a copyright and authorship banner (see README.md for an example) A few more minor comments below. [0] https://gitlab.com/dgibson/exeter/-/blob/main/CONTRIBUTING.md?ref_type=heads... [1] https://github.com/dgibson/dtc/blob/main/CONTRIBUTING.md#developers-certific...
--- CONTRIBUTING.md | 86 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 CONTRIBUTING.md
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..70e35b1 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,86 @@ +# Contributing to passt + +Thank you for your interest in contributing! This document explains how to prepare patches and participate in the email-based review process.
By convention we wrap Markdown files at 80 columns, so it's easier to read in text form.
+ +## Workflow + +### 1. Clone the project + + git clone git://passt.top/passt + +### 2. Create a Branch + + cd passt + git checkout -b my-feature-branch + +Work on a separate branch instead of committing directly to `master`. + +### 3. Make Changes and Commit + +* Edit the source code or documentation. + +* Stage your changes: + + git add <file1> <file2> ... + +* Commit with a clear message containing `Signed-off-by:` tag: + + git commit -s + + Commit message format: + + Subsystem: Brief summary (max ~50 chars) + + More detailed explanation if needed, wrapped at 72 chars. + + Signed-off-by: Your Name
+ + If there are some references, use "Links: " tag for simplicity. + +### 4. Generate Patches + +Use `git format-path` to generate patch(es): + + git format-patch origin/master + +This will generate numbered patch files such as 0001-...patch, 0002-...patch, etc. + +If you send a series of patches, use the `--cover-letter` option with `git format-patch`: + + git format-patch origin/main --cover-letter + +This will generate a cover letter besides your patches. You can edit the cover letter before sending. + +### 5. Send Patches + +Use `git send-email` to send patches directly to the mailing list: + + git send-email --to=passt-dev@passt.top 000*.patch + +If there are CCs (e.g. maintainers, reviewers), you can add them with `--cc`: + + git send-email --to=passt-dev@passt.top --cc=maintainer@example.com 000*.patch +
It might be worth mentioning git-publish (https://github.com/stefanha/git-publish) as an easier way of doing steps 4 & 5.
+### 6. Responding to Review Feedback + +* Be open to feedback on both code and documentation. + +* Update your patch as needed, and regenerate patches: + + git add <file1> <file2> ... + git commit --amend + git format-patch -v2 origin/master + +* Send the revised patches + + git send-email --to=passt-dev@passt.top v2-000*.patch + +### 7. Tips and Best Practices + +* Keep changes focused and easy to review. + +* Test your changes thoroughly. + +* Include documentation updates if your change affects usage or APIs. + +Thank you for helping improve passt! Your contributions make a big difference. -- 2.47.0
-- David Gibson (he or they) | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you, not the other way | around. http://www.ozlabs.org/~dgibson