Skip to main content

🫏 git-donkey

Ask DeepWiki

Because sometimes you need a worktree, and a donkey's got your back.

git-donkey is a collection of Git subcommands that make branch-based development less of a… well, you know. Stop wrestling with worktrees, tracking branches, and repository scaffolding—let the donkey do the heavy lifting.

What does it do?

git-donkey gives you Git subcommands for branch-based work:

  • git donkey – Creates linked worktrees at ../{repo}.worktrees/{branch} so you can work on multiple branches without the constant stash-switch-unstash dance. Bonus: automatically applies template overlays from your personal template directory!

  • git track – Fetch and switch to (or create) tracking branches in one command. No more "did I create this branch yet?" confusion.

  • git incoming / git in – Preview upstream commits that would be pulled into the current branch.

  • git outgoing / git out – Preview local commits that would be pushed to the current branch's upstream.

  • git fafo – Scaffold and publish a new GitHub repository from your agent-template projects. Find out what happens when you want to start a new project fast.

  • git plonk – Reclaim disk space from completed, clean git donkey worktrees, optionally cleaning generated directories or deleting completed local branches. Worktrees holding uncommitted work are reported and left alone rather than discarded.

  • git donkey-template – Manage template directories that get automatically copied into new worktrees. Perfect for per-repository config files like .editorconfig or .vscode/settings.json.

Quick start

# Create a worktree from the principal remote's default branch
# Existing checkouts are not pulled or rebased by default.
git donkey feature/awesome-stuff

# Opt in to a fast-forward-only update of an explicit local base
git donkey feature/from-main main --pull-ff

# Track a remote branch
git track feature/from-teammate


# Preview pull and push candidates
git incoming
git outgoing

# Scaffold a new GitHub repo from a template
git fafo my-new-project python

# Remove completed git-donkey worktrees
git plonk

# Set up a template directory for this repo
git donkey-template

Agent skill

The worktree-management skill provides an agent workflow for git donkey and git plonk, including remote-default bases, existing-worktree reuse, stacked branches, and reviewed cleanup. Its bundled cleanup checklist covers the cleanliness check, completion-marker limitations, and other agents' active work.

To install it in a compatible agent's skill directory, copy or symlink the whole skill/git-donkey-worktrees/ directory, retaining the directory name and its references/ subdirectory. Select the agent's documented skill location; the Python package installation does not install this skill automatically.

Learn more

Check out the Users' Guide for detailed usage, options, and examples. The donkey's got a lot of tricks up its… hooves?

License

This project is licensed under the ISC License. See the LICENSE file for details.

Contributing

Found a bug? Have an idea? The donkey welcomes contributions! Please ensure your changes follow the project's guidelines in AGENTS.md.

Download files

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

Source Distribution

git_donkey-0.2.0.tar.gz (349.6 kB view details)

Uploaded Source

Built Distribution

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

git_donkey-0.2.0-py3-none-any.whl (67.5 kB view details)

Uploaded Python 3

File details

Details for the file git_donkey-0.2.0.tar.gz.

File metadata

  • Download URL: git_donkey-0.2.0.tar.gz
  • Upload date:
  • Size: 349.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for git_donkey-0.2.0.tar.gz
Algorithm Hash digest
SHA256 954d5a5a5d2229c29bc10c08260d219e4846987d09fb5507523dd631ebddba43
MD5 d062b6dd96e71265928981f8a904438a
BLAKE2b-256 7ef026da7be781b8c6c07eeb38f9ccbea6902937e97768c3eef103b870dc3cd1

See more details on using hashes here.

File details

Details for the file git_donkey-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: git_donkey-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 67.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for git_donkey-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e02927a0302fa2559f9f6619ff2c0226309c82dca5b38f274ff2368b43e0057b
MD5 be2ef866d2309ad544dd0bd929d5094b
BLAKE2b-256 3d0b5ede98b6aa407a51a91952e8ca69fe0ab8533ead42408e95ce06c18cdd6f

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page