Skip to main content

GitTwin

Run multiple git commits, branches, or tags of the same application side by side, each in its own isolated environment — for comparison, debugging, regression testing, and demonstrations.

Status: early / pre-alpha. The pipeline described below is the design target; the CLI is just getting started.

Why

Reproducing "it worked on commit X but not on commit Y" usually means stashing changes, checking out refs one at a time, and juggling ports, dependencies, and env files by hand. GitTwin is meant to make that a single command:

  1. Point it at a repo and a list of refs (commits, branches, or tags).
  2. It spins up an isolated environment — its own worktree, dependencies, and ports — for each ref.
  3. You run, compare, and debug them side by side, without one checkout clobbering another.
  4. Tear it all down in one command when you're done.

Install

uv add gittwin
pip install gittwin

Usage

gittwin about
gittwin --version

Development

This project uses uv for dependency management.

uv sync --extra dev   # install package + dev deps into .venv
uv run pytest -q      # run tests
uv run gittwin about  # run the CLI

Download files

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

Source Distribution

gittwin-0.1.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

gittwin-0.1.0-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file gittwin-0.1.0.tar.gz.

File metadata

  • Download URL: gittwin-0.1.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for gittwin-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ab074385d324ae93bf8380763c8ccb17112fdd53c39de1b61f2a658db6f005c8
MD5 345513d1c22c037273f775bfe9019991
BLAKE2b-256 993854ea25d479c4786ffce9a071a4ffc77ce2c9d1c27ae895ca0e8adae51d76

See more details on using hashes here.

File details

Details for the file gittwin-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: gittwin-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for gittwin-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 074d259e7b29ae6568d2b824bdfbe84d71cf297cfad6d0e939893a19f42a1a1b
MD5 df030e5bcb749d2235f6eb2f744eed00
BLAKE2b-256 1f29348f2d1062e6a890832de62f7d8298fdd0431a462cbedb29950ab59b5abf

See more details on using hashes here.

Supported by

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