<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu" -->

---
title: Quick hack: git-pw | daily.dev
description: git-pw is a Python-based command-line tool that integrates git with Patchwork, the patch tracking system used by communities like the Linux kernel. It requires...
canonical: https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Quick hack: git-pw | daily.dev
og:description: git-pw is a Python-based command-line tool that integrates git with Patchwork, the patch tracking system used by communities like the Linux kernel. It requires...
og:url: https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu
og:image: https://api.daily.dev/og/posts/OVVFqC9zu.png
og:image:alt: Quick hack: git-pw
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Quick hack: git-pw

**[Collabora Blog](https://daily.dev/sources/collabora)** · 4 min read · 0 upvotes · 0 comments

## Summary

git-pw is a Python-based command-line tool that integrates git with Patchwork, the patch tracking system used by communities like the Linux kernel. It requires Patchwork v2.0 and its REST API. After a simple pip install and minimal git config (server URL and auth token), developers can search for patch series by keyword, inspect series metadata, and apply entire patch series in the correct order with a single command — replacing the manual workflow of downloading patches and running git-am individually.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/news-and-blog/blog/2019/04/18/quick-hack-git-pw>

## Questions this post answers

### How do I install and configure git-pw to work with kernel.org's Patchwork?

Install git-pw with `pip install --user git-pw`, then configure it per repository using `git config pw.server https://patchwork.kernel.org/api/1.1` and `git config pw.token YOUR_USER_TOKEN_HERE`. git-pw requires Patchwork v2.0 or later because it relies on the REST API introduced in that version, which understands the distinction between patches, series, and cover letters.

_Developers working with Linux kernel patch queues track tools like git-pw on daily.dev._

### How do I apply a full patch series from Patchwork using git-pw?

Run `git-pw series apply <series-id>` to fetch all patches in a series and apply them in the correct order. The series ID can be found via the Patchwork web UI or by searching with `git-pw --project <project-name> series list <keyword>`. Conflicts still require manual resolution the same way they would with git-am.

_Open source contributors navigating mailing-list patch workflows find relevant tooling discussions on daily.dev._

## Similar posts on daily.dev

- [A Simple Way to Power Up \`git add\`](https://daily.dev/posts/a-simple-way-to-power-up-git-add--hcrlorvfh) · Viget · 4 upvotes · 0 comments
- [Improve code quality and security with PatchPatrol](https://daily.dev/posts/improve-code-quality-and-security-with-patchpatrol-k9m89agzc) · Red Hat Developer · 0 upvotes · 0 comments
- [Reviewing so called Pull Requests at $dayjob](https://daily.dev/posts/reviewing-so-called-pull-requests-at-dayjob-na1bdh91o) · Lobsters · 0 upvotes · 0 comments
- [EP206: Git Workflow: Essential Commands](https://daily.dev/posts/ep206-git-workflow-essential-commands-mg76uwhat) · ByteByteGo · 5 upvotes · 0 comments
- [pgit: What If Your Git History Was a SQL Database?](https://daily.dev/posts/pgit-what-if-your-git-history-was-a-sql-database--k2mbbtlm1) · Hacker News · 44 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#linux](https://daily.dev/tags/linux), [#git](https://daily.dev/tags/git)

[View this post on daily.dev](https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Quick hack: git-pw","url":"https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu"},"datePublished":"2026-08-11T08:57:17.820Z","dateModified":"2026-08-11T09:39:22.829Z","description":"git-pw is a Python-based command-line tool that integrates git with Patchwork, the patch tracking system used by communities like the Linux kernel. It requires...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/2665c43b1d03b3db8329a946292fbe7d?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/2665c43b1d03b3db8329a946292fbe7d?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python,linux,git","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"Quick hack: git-pw"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/quick-hack-git-pw-ovvfqc9zu#faq","mainEntity":[{"@type":"Question","name":"How do I install and configure git-pw to work with kernel.org's Patchwork?","acceptedAnswer":{"@type":"Answer","text":"Install git-pw with `pip install --user git-pw`, then configure it per repository using `git config pw.server https://patchwork.kernel.org/api/1.1` and `git config pw.token YOUR_USER_TOKEN_HERE`. git-pw requires Patchwork v2.0 or later because it relies on the REST API introduced in that version, which understands the distinction between patches, series, and cover letters. Developers working with Linux kernel patch queues track tools like git-pw on daily.dev."}},{"@type":"Question","name":"How do I apply a full patch series from Patchwork using git-pw?","acceptedAnswer":{"@type":"Answer","text":"Run `git-pw series apply <series-id>` to fetch all patches in a series and apply them in the correct order. The series ID can be found via the Patchwork web UI or by searching with `git-pw --project <project-name> series list <keyword>`. Conflicts still require manual resolution the same way they would with git-am. Open source contributors navigating mailing-list patch workflows find relevant tooling discussions on daily.dev."}}]}
```

