Coder Social home page Coder Social logo

iq-scm / patchwork Goto Github PK

View Code? Open in Web Editor NEW

This project forked from getpatchwork/patchwork

0.0 0.0 0.0 3.42 MB

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

Home Page: http://jk.ozlabs.org/projects/patchwork/

License: GNU General Public License v2.0

Shell 0.79% JavaScript 1.04% Python 90.13% CSS 0.95% HTML 6.26% PLpgSQL 0.68% Dockerfile 0.15%

patchwork's Introduction

Patchwork

Requirements Status Codecov Build Status Documentation Status Discord

Patchwork is a patch tracking system for community-based projects. It is intended to make the patch management process easier for both the project's contributors and maintainers, leaving time for the more important (and more interesting) stuff.

Patches that have been sent to a mailing list are "caught" by the system, and appear on a web page. Any comments posted that reference the patch are appended to the patch page too. The project's maintainer can then scan through the list of patches, marking each with a certain state, such as Accepted, Rejected or Under Review. Old patches can be sent to the archive or deleted.

Currently, Patchwork is being used for a number of open-source projects, mostly subsystems of the Linux kernel. Although Patchwork has been developed with the kernel workflow in mind, the aim is to be flexible enough to suit the majority of community projects.

Usage

Patchwork provides a web UI, a REST API, and a XML-RPC API (deprecated). You can use the APIs to build you own application or you can use one the many existing clients.

There are many existing Patchwork instances. Unless you're a larger project that is already hosting many of its own resources, you may wish to request a project on one of these instances.

  • patchwork.ozlabs.org
  • patchwork.kernel.org
  • patches.linaro.org
  • patchwork.sourceware.org
  • patchwork.open-mesh.org

Requirements

Patchwork requires reasonably recent versions of:

  • Python 3
  • Django
  • Django REST Framework
  • Django Filters

The precise versions supported are listed in the release notes.

Development Installation

Docker is the recommended installation method for a Patchwork development environment. To install Patchwork:

  1. Install Docker and docker-compose.

  2. Clone the Patchwork repo:

    $ git clone https://github.com/getpatchwork/patchwork.git
    
  3. Create a .env file in the root directory of the project and store your UID and GID attributes there:

    $ cd patchwork && printf "UID=$(id -u)\nGID=$(id -g)\n" > .env
    
  4. Build the images. This will download a number of packages from the internet, and compile several versions of Python:

    $ docker-compose build
    
  5. Run docker-compose up:

    $ docker-compose up
    

The Patchwork instance will now be deployed at http://localhost:8000/.

For more information, including helpful command line options and alternative installation methods, refer to the documentation.

Talks and Presentations

  • Mailing List, Meet CI (slides) - FOSDEM 2017
  • Patches carved into stone tablets (slides) - Kernel Recipes Conference 2016
  • A New Patchwork (slides) - FOSDEM 2016
  • Patchwork: reducing your patch workload (slides) - Linux Plumbers Conference 2011

Additional Information

For further information, refer to the documentation.

Contact

For bug reports, patch submissions or other questions, use the mailing list.

patchwork's People

Contributors

1ace avatar ajdlinux avatar aldot avatar alialnu avatar computersforpeace avatar cworth-gh avatar daxtens avatar dianders avatar dirkwallenstein avatar ffainelli avatar jk-ozlabs avatar madduck avatar mchehab avatar metp avatar mricon avatar pevik avatar philpep avatar pinchartl avatar pyup-bot avatar ralfbaechle avatar raxelg avatar rjarry avatar ruscur avatar seanfarley avatar simo5 avatar stephenfin avatar stewartsmith avatar veruu avatar vicamo avatar yann-morin-1998 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.