login: Focus the username field on load
[patchwork] / docs / index.md
1 # patchwork
2
3 patchwork is a patch tracking system for community-based projects. It is
4 intended to make the patch management process easier for both the project's
5 contributors and maintainers, leaving time for the more important (and more
6 interesting) stuff.
7
8 Patches that have been sent to a mailing list are 'caught' by the system, and
9 appear on a web page. Any comments posted that reference the patch are appended
10 to the patch page too. The project's maintainer can then scan through the list
11 of patches, marking each with a certain state, such as Accepted, Rejected or
12 Under Review. Old patches can be sent to the archive or deleted.
13
14 Currently, patchwork is being used for a number of open-source projects, mostly
15 subsystems of the Linux kernel. Although Patchwork has been developed with the
16 kernel workflow in mind, the aim is to be flexible enough to suit the majority
17 of community projects.
18
19 # Download
20
21 The latest version of Patchwork is available with git. To download:
22
23     $ git clone git://ozlabs.org/home/jk/git/patchwork
24
25 Patchwork is distributed under the [GNU General Public License].
26
27 # Design
28
29 ## patchwork should supplement mailing lists, not replace them
30
31 Patchwork isn't intended to replace a community mailing list; that's why you
32 can't comment on a patch in patchwork. If this were the case, then there would
33 be two forums of discussion on patches, which fragments the patch review
34 process. Developers who don't use patchwork would get left out of the
35 discussion.
36
37 However, a future development item for patchwork is to facilitate on-list
38 commenting, by providing a "send a reply to the list" feature for logged-in
39 users.
40
41 ## Don't pollute the project's changelogs with patchwork poop
42
43 A project's changelogs are valuable - we don't want to add patchwork-specific
44 metadata.
45
46 ## patchwork users shouldn't require a specific version control system
47
48 Not everyone uses git for kernel development, and not everyone uses git for
49 patchwork-tracked projects.
50
51 It's still possible to hook other programs into patchwork, using the pwclient
52 command-line client for patchwork, or directly to the XML RPC interface.
53
54 # Getting Started
55
56 You should check out the [installation] and [development] guides for
57 information on how to get to work with patchwork.
58
59 # Support
60
61 All questions and contributions should be sent to the [patchwork mailing list].
62
63 [GNU General Public License]: http://www.gnu.org/licenses/gpl-2.0.html
64 [installation]: installation.md
65 [development]: development.md
66 [patchwork mailing list]: https://ozlabs.org/mailman/listinfo/patchwork