Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!

Difference between revisions of "Patchwork"

From Openembedded.org
Jump to: navigation, search
(Simple instructions for applying patches with git.)
 
(14 intermediate revisions by 7 users not shown)
Line 1: Line 1:
To apply a patch from patchwork using Git, download the mbox file and apply it using "git am < file".
+
[http://ozlabs.org/~jk/projects/patchwork/ Patchwork] is a web-based patch tracking system designed to facilitate the contribution and management of contributions to an open-source project.
  
If the submitter of the patch has not written the Subject of the email according to the OpenEmbedded policy for commit messages, then use "git commit --amend" to edit the commit message before you push.
+
The URL for OpenEmbedded’s Patchwork installation is http://patches.openembedded.org. The installation is also accessible by the link in the navigation bar under ''oe services''.
 +
 
 +
== Apply patches ==
 +
 
 +
To apply a patch from the [http://patches.openembedded.org patchwork queue] using [[Git]], download the mbox file and apply it using
 +
git am < file
 +
 
 +
If the submitter of the patch has not written the ''Subject'' of the email according to the OpenEmbedded policy for commit messages, then use
 +
git commit --amend
 +
to edit the commit message before you push.
 +
 
 +
You could also use the script in [http://cgit.openembedded.org/cgit.cgi/openembedded/tree/contrib/patchwork/pw-am.sh contrib/patchwork/pw-am.sh] this script will fetch an 'mbox' patch from patchwork and git am it
 +
usage: pw-am.sh <number1> <number2> ...
 +
example: 'pw-am.sh 12 13' will get the patch from http://patches.openembedded.org/patch/12/
 +
and http://patches.openembedded.org/patch/13/
 +
 
 +
It is desirable to update the state of the patch in the patch queue. This could also be added to the script.
 +
 
 +
== Multiple layers sharing the same oe project on patchwork ==
 +
 
 +
http://patchwork.openembedded.org/project/oe/list/
 +
is populated from openembedded-devel ML and shared by multiple projects, each project usually defines prefix which should be used when sending patches to ML ([meta-layer-name] tag should be used).
 +
 
 +
In order to keep main page clean, patches are split to multiple bundles, current list is:
 +
[http://patches.openembedded.org/bundle/jama/2011.03-maintenance/?archive=both 2011.03-maintenance]
 +
[http://patches.openembedded.org/bundle/jama/danny/?archive=both danny]
 +
[http://patches.openembedded.org/bundle/jama/denzil/?archive=both denzil]
 +
[http://patches.openembedded.org/bundle/jama/in-test/?archive=both in-test]
 +
[http://patches.openembedded.org/bundle/jama/meta-browser/?archive=both meta-browser]
 +
[http://patches.openembedded.org/bundle/jama/meta-handheld/?archive=both meta-handheld]
 +
[http://patches.openembedded.org/bundle/jama/meta-initramfs/?archive=both meta-initramfs]
 +
[http://patches.openembedded.org/bundle/jama/meta-java/?archive=both meta-java]
 +
[http://patches.openembedded.org/bundle/jama/meta-kde/?archive=both meta-kde]
 +
[http://patches.openembedded.org/bundle/jama/meta-networking/?archive=both meta-networking]
 +
[http://patches.openembedded.org/bundle/jama/meta-opie/?archive=both meta-opie]
 +
[http://patches.openembedded.org/bundle/jama/meta-systemd/?archive=both meta-systemd]
 +
[http://patches.openembedded.org/bundle/jama/meta-webserver/?archive=both meta-webserver]
 +
[http://patches.openembedded.org/bundle/jama/oe-classic-lic/?archive=both oe-classic-lic]
 +
[http://patches.openembedded.org/bundle/jama/oe-classic/?archive=both oe-classic]
 +
 
 +
in-test bundle is used for meta-efl meta-gnome meta-gpe meta-multimedia meta-oe meta-ruby meta-systemd meta-xfce changes when they are moved to jenkins build for verification build (meta-oe-contrib/jansa/in-test branch).
 +
 
 +
When some patch is moved to bundle it's archive status is set to archived, but state is still "New". That's why you need to change default filter to see archived patches in bundles.
 +
 
 +
== Update the state of patches ==
 +
 
 +
You have to register to be able to update the state of patches. You can use the Web interface or `pwclient`.
 +
 
 +
== pwclient ==
 +
 
 +
`pwclient` can be used for example to retrieve patches, search the queue or update the state.
 +
 
 +
All necessary information for `pwclient` is linked from the bottom of http://patches.openembedded.org/project/oe/. Use
 +
 
 +
./pwclient help
 +
 
 +
for an overview on how to use it.
  
 
[[Category:Dev]]
 
[[Category:Dev]]
 +
[[Category:Community]]

Latest revision as of 18:21, 7 March 2013

Patchwork is a web-based patch tracking system designed to facilitate the contribution and management of contributions to an open-source project.

The URL for OpenEmbedded’s Patchwork installation is http://patches.openembedded.org. The installation is also accessible by the link in the navigation bar under oe services.

Contents

[edit] Apply patches

To apply a patch from the patchwork queue using Git, download the mbox file and apply it using

git am < file

If the submitter of the patch has not written the Subject of the email according to the OpenEmbedded policy for commit messages, then use

git commit --amend

to edit the commit message before you push.

You could also use the script in contrib/patchwork/pw-am.sh this script will fetch an 'mbox' patch from patchwork and git am it

usage: pw-am.sh <number1> <number2> ...
example: 'pw-am.sh 12 13' will get the patch from http://patches.openembedded.org/patch/12/ 
and http://patches.openembedded.org/patch/13/

It is desirable to update the state of the patch in the patch queue. This could also be added to the script.

[edit] Multiple layers sharing the same oe project on patchwork

http://patchwork.openembedded.org/project/oe/list/ is populated from openembedded-devel ML and shared by multiple projects, each project usually defines prefix which should be used when sending patches to ML ([meta-layer-name] tag should be used).

In order to keep main page clean, patches are split to multiple bundles, current list is: 2011.03-maintenance danny denzil in-test meta-browser meta-handheld meta-initramfs meta-java meta-kde meta-networking meta-opie meta-systemd meta-webserver oe-classic-lic oe-classic

in-test bundle is used for meta-efl meta-gnome meta-gpe meta-multimedia meta-oe meta-ruby meta-systemd meta-xfce changes when they are moved to jenkins build for verification build (meta-oe-contrib/jansa/in-test branch).

When some patch is moved to bundle it's archive status is set to archived, but state is still "New". That's why you need to change default filter to see archived patches in bundles.

[edit] Update the state of patches

You have to register to be able to update the state of patches. You can use the Web interface or `pwclient`.

[edit] pwclient

`pwclient` can be used for example to retrieve patches, search the queue or update the state.

All necessary information for `pwclient` is linked from the bottom of http://patches.openembedded.org/project/oe/. Use

./pwclient help

for an overview on how to use it.

Personal tools
Namespaces

Variants
Actions
Navigation
Categories
OE services
Toolbox