Skip to main content

Create and initialize isolated git worktree worksets.

Project description

workset

Create and initialize isolated git worktree worksets in one command.

A workset is a directory containing one or more git worktrees for related repos, each on their own branch, with submodules initialized and the Python environment ready to go. workset automates the setup so you can go from "I have a task" to a working environment without the manual back-and-forth.

Installation

uv tool install workset

Or install from source:

uv tool install --editable path/to/workset

Usage

workset --help

With date_prefix = true, worksets are created under the shared Ali workflow date layout:

<workset-root>/YYYY/MM-month/DD-ddd/<slug>/

For example:

~/Projects/worksets/2026/06-june/15-mon/my-task/

Configure dated worksets in ~/.config/workset/repos.toml:

[workset]
root = "~/Projects/worksets"
date_prefix = true
timezone = "America/Los_Angeles"

When timezone is omitted, workset uses UTC for date-prefixed paths.

Development

uv sync --extra dev
uv run ruff format --check .
uv run ruff check .
uv run mypy
uv run pytest

Publishing

Releases are published to PyPI automatically when a GitHub Release is created.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

workset-0.2.3.tar.gz (45.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

workset-0.2.3-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file workset-0.2.3.tar.gz.

File metadata

  • Download URL: workset-0.2.3.tar.gz
  • Upload date:
  • Size: 45.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for workset-0.2.3.tar.gz
Algorithm Hash digest
SHA256 d927983759516a46c7e7dc75ead479359680f78edf56522908a875cfef2ce1bf
MD5 d3fa65dfeda748c7e8897afc1717b706
BLAKE2b-256 139f91f77ebf8a70511673716dc606600bfa09f0c2d166e97b289caccb36125c

See more details on using hashes here.

Provenance

The following attestation bundles were made for workset-0.2.3.tar.gz:

Publisher: release.yml on alik-git/workset

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file workset-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: workset-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for workset-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a725dd4db5bcbbb697699c78198e83a230cd071f19947c910860371b04f93a48
MD5 d27acb7c0baae2bf7cf3151d87df4979
BLAKE2b-256 f475418f3fde901114809ae9d00587a12281c6f0047f2900c86c60171fd90cbe

See more details on using hashes here.

Provenance

The following attestation bundles were made for workset-0.2.3-py3-none-any.whl:

Publisher: release.yml on alik-git/workset

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page