From ec2482a24ac3a1d0beadae80bcb28c8d89b4c1ab Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Sat, 10 May 2025 13:05:18 +0200 Subject: [PATCH] patman: Add basic documentation for new features Describe the new subcommands and how they should be used in a normal workflow. Note that the naming of branches is very rigid, or 'opinionated' in marketing terms. Patman can track a single branch for each version of a series and they must all be named the same, except for the version-number suffix. Version 1 series have no suffix. This description is fairly bare-bones but should be enough for some initial testing and comments. Signed-off-by: Simon Glass --- doc/develop/pics/patman.jpg | Bin 0 -> 97131 bytes tools/patman/patman.rst | 283 +++++++++++++++++++++++++++++++++++- 2 files changed, 280 insertions(+), 3 deletions(-) create mode 100644 doc/develop/pics/patman.jpg diff --git a/doc/develop/pics/patman.jpg b/doc/develop/pics/patman.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2dcf598e08897780ae8d660a63529a667741725f GIT binary patch literal 97131 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 K@t*noo&O)`nR&+m literal 0 HcmV?d00001 diff --git a/tools/patman/patman.rst b/tools/patman/patman.rst index 63b95a6b161..549e203c254 100644 --- a/tools/patman/patman.rst +++ b/tools/patman/patman.rst @@ -16,12 +16,13 @@ This tool is a Python script which: - Inserts a cover letter with change lists - Runs the patches through checkpatch.pl and its own checks - Optionally emails them out to selected people +- Links the series automatically to Patchwork once sent It also has some Patchwork features: -- shows review tags from Patchwork so you can update your local patches -- pulls these down into a new branch on request -- lists comments received on a series +- Manage local series and their status on patchwork +- Show review tags from Patchwork and allows them to be gathered into commits +- List comments received on a series It is intended to automate patch creation and make it a less error-prone process. It is useful for U-Boot and Linux work so far, @@ -659,6 +660,282 @@ so to send them: and it will create and send the version 2 series. +Series Management +----------------- + +Sometimes you might have several series in flight at the same time. Each of +these receives comments and you want to create a new version of each series with +those comments addressed. + +Patman provides a few subcommands which are helpful for managing series. + +Series and branches +~~~~~~~~~~~~~~~~~~~ + +'patman series' works with the concept of a series. It maintains a local +database (.patman.db in your top-level git tree) and uses that to keep track of +series and patches. + +Each series goes through muliple versions. Patman requires that the first +version of your series is in a branch without a numeric suffix. Branch names +like 'serial' and 'video' are OK, but 'part3' is not. This is because Patman +uses the number at the end of the branch name to indicate the version. + +If your series name is 'video', then you can have a 'video' branch for version +1 of the series, 'video2' for version 2 and 'video3' for version 3. All three +branches are for the same series. Patman keeps track of these different +versions. It handles the branch naming automatically, but you need to be aware +of what it is doing. + +You will have an easier time if the branch names you use with 'patman series' +are short, no more than 15 characters. This is the amount of columnar space in +listings. You can add a longer description as the series description. If you +are used to having very descriptive branch names, remember that patman lets you +add metadata into commit which is automatically removed before sending. + +This documentation uses the term 'series' to mean all the versions of a series +and 'series/version' to mean a particular version of a series. + +Updating commits +~~~~~~~~~~~~~~~~ + +Since Patman provides quite a bit of automation, it updates your commits in +some cases, effectively doing a rebase of a branch in order to change the tags +in the commits. It never makes code changes. + +In extremis you can use 'git reflog' to revert something that Patman did. + + +Series subcommands +~~~~~~~~~~~~~~~~~~ + +Note that 'patman series ...' can be abbreviated as 'patman s' or 'patman ser'. + +Here is a short overview of the available subcommands: + + add + Add a new series. Use this on an existing branch to tell Patman about it. + + archive (ar) + Archive a series when you have finished upstreaming it. Archived series + are not shown by most commands. This creates a dated tag for each + version of the series, pointing to the series branch, then deletes the + branches. It puts the tag names in the database so that it can + 'unarchive' to restore things how they were. + + unarchive (unar) + Unarchive a series when you decide you need to do something more with + it. The branches are restored and tags deleted. + + autolink (au) + Search patchwork for the series link for your series, so Patman can + track the status + + autolink-all + Same but for all series + + inc + Increase the series number, effectively creating a new branch with the + next highest version number. The new branch is created based on the + existing branch. So if you use 'patman series inc' on branch 'video2' + it will create branch 'video3' and add v3 into its database + + dec + Decrease the series number, thus deleting the current branch and + removing that version from the data. If you use this comment on branch + 'video3' Patman will delete version 3 and branch 'video3'. + + get-link + Shows the Patchwork link for a series/version + + ls + Lists the series in the database + + mark + Mark a series with 'Change-Id' tags so that Patman can track patches + even when the subject changes. Unmarked patches just use the subject to + decided which is which. + + unmark + Remove 'Change-Id' tags from a series. + + open (o) + Open a series in Patchwork using your web browser + + patches + Show the patches in a particular series/version + + progress (p) + Show upstream progress for your series, or for all series + + rm + Remove a series entirely, including all versions + + rm-version (rmv) + Remove a particular version of a series. This is similar to 'dec' + except that any version can be removed, not just the latest one. + + scan + Scan the local branch and update the database with the set of patches + in that branch. This throws away the old patches. + + send + Send a series out as patches. This is similar to 'patman send' except + that it can send any series, not just the current branch. It also + waits a little for patchwork to see the cover letter, so it can find + out the patchwork link for the series. + + set-link + Sets the Patchwork link for a series-version manually. + + status (st) + Run 'patman status' on a series. This is similar to 'patman status' + except that it can get status on any series, not just the current + branch + + summary + Shows a quick summary of series with their status and description. + + sync + Sync the status of a series with Pathwork, so that + 'patman series progress' can show the right information. + + sync-all + Sync the status of all series. + + +Patman series workflow +~~~~~~~~~~~~~~~~~~~~~~ + +Here is a run-through of how to incorporate 'patman series' into your workflow. + +Firstly, set up your project:: + + patman patchwork set-project U-Boot + +This just tells Patman to look on the Patchwork server for a project of that +name. Internally Patman stores the ID and URL 'link-name' for the project, so it +can access it. + +If you need to use a different patchwork server, use the `--patchwork-url` +option or put the URL in your Patman-settings file. + +Now create a branch. For our example we are going to send out a series related +to video so the branch will be called 'video'. The upstream remove is called +'us':: + + git checkout -b video us/master + +We now have a branch and so we can do some commits:: + + + git add ... + + git add -u + git commit ... + git commit ... + +We now have a few commits in our 'video' branch. Let's tell patman about it:: + + patman series add + +Like most commands, if no series is given (`patman series -s video add`) then +the current branch is assumed. Since the branch is called 'video' patman knows +that it is version one of the video series. + +You'll likely get a warning that there is no cover letter. Let's add some tags +to the top commit:: + + Series-to: u-boot + Series-cc: ... + Cover-letter: + video: Improve syncing performance with cyclic + +Trying again:: + + patman series add + +You'll likely get a warning that the commits are unmarked. You can either let +patman add Change-Id values itself with the `-m` flag, or tell it not to worry +about it with `-M`. You must choose one or the other. Let's leave the commits +unmarked:: + + patman series add -M + +Congratulations, you've now got a patman database! + +Now let's send out the series. We will add tags to the top commit. + +To send it:: + + patman series send + +You should send 'git send-email' start up and you can confirm the sending of +each email. + +After that, patman waits a bit to see if it can find your new series appearing +on Patchwork. With a bit of luck this will only take 20 seconds or so. Then your +series is linked. + +To gather tags (Reviewed-by ...) for your series from patchwork:: + + patman series gather + +Now you can check your progress:: + + patman series progress + +Later on you get some comments, or perhaps you just decide to make a change on +your own. You have several options. + +The first option is that you can just create a new branch:: + + git checkout -b video2 video + +then you can add this 'v2' series to Patman with:: + + patman series add + +The second option is to get patman to create the new 'video2' branch in one +step:: + + patman inc + +The third option is to collect some tags using the 'patman status' command and +put them in a new branch:: + + patman status -d video2 + +One day the fourth option will be to ask patman to collect tags as part of the +'patman inc' command. + +Again, you do your edits, perhaps adding/removing patches, rebasing on -master +and so on. Then, send your v2:: + + patman series send + +Let's say the patches are accepted. You can use:: + + patch series gather + patch series progress + +to check, or:: + + patman series status -cC + +to see comments. You can now archive the series:: + + patman series archive + +At this point you have the basics. Some of the subcommands useful options, so +be sure to check out the help. + +Here is a sample 'progress' view: + +.. image:: pics/patman.jpg + :width: 800 + :alt: Patman showing the progress view + General points -------------- -- 2.47.2