======
git-pw
======
.. NOTE: If editing this, be sure to update the line numbers in 'doc/index'
.. image:: https://badge.fury.io/py/git-pw.svg
:target: https://badge.fury.io/py/git-pw
:alt: PyPi Status
.. image:: https://readthedocs.org/projects/git-pw/badge/?version=latest
:target: http://git-pw.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
.. image:: https://github.com/getpatchwork/git-pw/actions/workflows/ci.yaml/badge.svg
:target: https://github.com/getpatchwork/git-pw/actions/workflows/ci.yaml
:alt: Build Status
*git-pw* is a tool for integrating Git with `Patchwork`__, the web-based patch
tracking system.
.. important::
`git-pw` only supports Patchwork 2.0+ and REST API support must be enabled
on the server end. You can check for support by browsing ``/about`` for your
given instance. If this page returns a 404, you are using Patchwork < 2.0.
The `pwclient`__ utility can be used to interact with older Patchwork
instances or instances with the REST API disabled.
.. __: http://jk.ozlabs.org/projects/patchwork/
.. __: https://patchwork.ozlabs.org/help/pwclient/
Installation
------------
The easiest way to install *git-pw* and its dependencies is using ``pip``. To
do so, run:
.. code-block:: bash
$ pip install git-pw
You can also install *git-pw* manually. First, install the required
dependencies. On Fedora, run:
.. code-block:: bash
$ sudo dnf install python3-requests python3-click python3-pbr \
python3-arrow python3-tabulate python3-yaml
On Ubuntu, run:
.. code-block:: bash
$ sudo apt-get install python3-requests python3-click python3-pbr \
python3-arrow python3-tabulate python3-yaml
Once dependencies are installed, clone this repo and install with ``pip``:
.. code-block:: bash
$ git clone https://github.com/getpatchwork/git-pw
$ cd git-pw
$ pip install --user .
Getting Started
---------------
To begin, you'll need to configure Git settings appropriately. The following
settings are **required**:
``pw.server``
The URL for the Patchwork instance's API. This should include the API
version::
https://patchwork.ozlabs.org/api/1.3
You can discover the API version supported by your instance by comparing the
server version, found at ``/about``, with the API versions provided in the
`documentation`__. For example, if your server is running Patchwork version
3.2.x, you should use API version 1.3.
.. __: https://patchwork.readthedocs.io/en/stable-3.2/api/rest/#rest-api-versions
``pw.project``
The project name or list-id. This will appear in the URL when using the web
UI::
https://patchwork.ozlabs.org/project/{project_name}/list/
For read-write access, you also need authentication - you can use either API
tokens or a username/password combination:
``pw.token``
The API token for your Patchwork account.
``pw.username``
The username for your Patchwork account.
``pw.password``
The password for your Patchwork account.
If only read-only access is desired, credentials can be omitted.
The following settings are **optional** and may need to be set depending on
your Patchwork instance's configuration:
``pw.states``
The states that can be applied to a patch using the ``git pw patch update``
command. Should be provided in slug form (``changes-requested`` instead of
``Changes Requested``). Only required if your Patchwork instance uses
non-default states.
You can set these settings using the ``git config`` command. This should be
done in the repo in which you intend to apply patches. For example, to
configure the Patchwork project, run:
.. code-block:: bash
$ git config pw.server 'https://patchwork.ozlabs.org/api/1.1/'
$ git config pw.project 'patchwork'
Development
-----------
If you're interested in contributing to *git-pw*, first clone the repo:
.. code-block:: bash
$ git clone https://github.com/getpatchwork/git-pw
$ cd git-pw
Create a *virtualenv*, then install the package in `editable`__ mode:
.. code-block:: bash
$ virtualenv .venv
$ source .venv/bin/activate
$ pip install --editable .
.. __: https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs
Documentation
-------------
Documentation is available on `Read the Docs`__
.. __: https://git-pw.readthedocs.org/
Raw data
{
"_id": null,
"home_page": "https://github.com/getpatchwork/git-pw",
"name": "git-pw",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "git patchwork",
"author": "Stephen Finucane",
"author_email": "stephen@that.guru",
"download_url": "https://files.pythonhosted.org/packages/ed/64/6832fdddf93d5193d61478bd6171447561e18b75d9f64f25e7af67120429/git_pw-2.7.0.tar.gz",
"platform": null,
"description": "======\ngit-pw\n======\n\n.. NOTE: If editing this, be sure to update the line numbers in 'doc/index'\n\n.. image:: https://badge.fury.io/py/git-pw.svg\n :target: https://badge.fury.io/py/git-pw\n :alt: PyPi Status\n\n.. image:: https://readthedocs.org/projects/git-pw/badge/?version=latest\n :target: http://git-pw.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://github.com/getpatchwork/git-pw/actions/workflows/ci.yaml/badge.svg\n :target: https://github.com/getpatchwork/git-pw/actions/workflows/ci.yaml\n :alt: Build Status\n\n*git-pw* is a tool for integrating Git with `Patchwork`__, the web-based patch\ntracking system.\n\n.. important::\n\n `git-pw` only supports Patchwork 2.0+ and REST API support must be enabled\n on the server end. You can check for support by browsing ``/about`` for your\n given instance. If this page returns a 404, you are using Patchwork < 2.0.\n\n The `pwclient`__ utility can be used to interact with older Patchwork\n instances or instances with the REST API disabled.\n\n.. __: http://jk.ozlabs.org/projects/patchwork/\n.. __: https://patchwork.ozlabs.org/help/pwclient/\n\nInstallation\n------------\n\nThe easiest way to install *git-pw* and its dependencies is using ``pip``. To\ndo so, run:\n\n.. code-block:: bash\n\n $ pip install git-pw\n\nYou can also install *git-pw* manually. First, install the required\ndependencies. On Fedora, run:\n\n.. code-block:: bash\n\n $ sudo dnf install python3-requests python3-click python3-pbr \\\n python3-arrow python3-tabulate python3-yaml\n\nOn Ubuntu, run:\n\n.. code-block:: bash\n\n $ sudo apt-get install python3-requests python3-click python3-pbr \\\n python3-arrow python3-tabulate python3-yaml\n\nOnce dependencies are installed, clone this repo and install with ``pip``:\n\n.. code-block:: bash\n\n $ git clone https://github.com/getpatchwork/git-pw\n $ cd git-pw\n $ pip install --user .\n\nGetting Started\n---------------\n\nTo begin, you'll need to configure Git settings appropriately. The following\nsettings are **required**:\n\n``pw.server``\n The URL for the Patchwork instance's API. This should include the API\n version::\n\n https://patchwork.ozlabs.org/api/1.3\n\n You can discover the API version supported by your instance by comparing the\n server version, found at ``/about``, with the API versions provided in the\n `documentation`__. For example, if your server is running Patchwork version\n 3.2.x, you should use API version 1.3.\n\n .. __: https://patchwork.readthedocs.io/en/stable-3.2/api/rest/#rest-api-versions\n\n``pw.project``\n The project name or list-id. This will appear in the URL when using the web\n UI::\n\n https://patchwork.ozlabs.org/project/{project_name}/list/\n\nFor read-write access, you also need authentication - you can use either API\ntokens or a username/password combination:\n\n``pw.token``\n The API token for your Patchwork account.\n\n``pw.username``\n The username for your Patchwork account.\n\n``pw.password``\n The password for your Patchwork account.\n\nIf only read-only access is desired, credentials can be omitted.\n\nThe following settings are **optional** and may need to be set depending on\nyour Patchwork instance's configuration:\n\n``pw.states``\n The states that can be applied to a patch using the ``git pw patch update``\n command. Should be provided in slug form (``changes-requested`` instead of\n ``Changes Requested``). Only required if your Patchwork instance uses\n non-default states.\n\nYou can set these settings using the ``git config`` command. This should be\ndone in the repo in which you intend to apply patches. For example, to\nconfigure the Patchwork project, run:\n\n.. code-block:: bash\n\n $ git config pw.server 'https://patchwork.ozlabs.org/api/1.1/'\n $ git config pw.project 'patchwork'\n\nDevelopment\n-----------\n\nIf you're interested in contributing to *git-pw*, first clone the repo:\n\n.. code-block:: bash\n\n $ git clone https://github.com/getpatchwork/git-pw\n $ cd git-pw\n\nCreate a *virtualenv*, then install the package in `editable`__ mode:\n\n.. code-block:: bash\n\n $ virtualenv .venv\n $ source .venv/bin/activate\n $ pip install --editable .\n\n.. __: https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs\n\nDocumentation\n-------------\n\nDocumentation is available on `Read the Docs`__\n\n.. __: https://git-pw.readthedocs.org/\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Git-Patchwork integration tool",
"version": "2.7.0",
"project_urls": {
"Bug Tracker": "https://github.com/getpatchwork/git-pw/issues",
"Documentation": "https://git-pw.readthedocs.io",
"Homepage": "https://github.com/getpatchwork/git-pw",
"Source Code": "https://github.com/getpatchwork/git-pw"
},
"split_keywords": [
"git",
"patchwork"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dd0453030cfba916477128d59df9a62051cb8079293ad1dc150b3540bf00eddb",
"md5": "59ad56bbde2b896610469e342b5ea3a3",
"sha256": "892e2211fbbc10a0dd4d3f795fab80e3792a7b2d436967817af136c4863bb7b3"
},
"downloads": -1,
"filename": "git_pw-2.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "59ad56bbde2b896610469e342b5ea3a3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 22395,
"upload_time": "2024-10-23T19:28:23",
"upload_time_iso_8601": "2024-10-23T19:28:23.325937Z",
"url": "https://files.pythonhosted.org/packages/dd/04/53030cfba916477128d59df9a62051cb8079293ad1dc150b3540bf00eddb/git_pw-2.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "ed646832fdddf93d5193d61478bd6171447561e18b75d9f64f25e7af67120429",
"md5": "6a13a425840a0c21e32bc8e049c99cca",
"sha256": "99cb0b4a603386127c8205358d9780428a0468f8b1cb73ace804a5a466a28ef4"
},
"downloads": -1,
"filename": "git_pw-2.7.0.tar.gz",
"has_sig": false,
"md5_digest": "6a13a425840a0c21e32bc8e049c99cca",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 45461,
"upload_time": "2024-10-23T19:28:24",
"upload_time_iso_8601": "2024-10-23T19:28:24.718512Z",
"url": "https://files.pythonhosted.org/packages/ed/64/6832fdddf93d5193d61478bd6171447561e18b75d9f64f25e7af67120429/git_pw-2.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-23 19:28:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "getpatchwork",
"github_project": "git-pw",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "git-pw"
}