Skip to main content

CLI tool for zipping a git repo and excluding .gitignore and untracked files

Project description

ZipGit

CLI tool for zipping a git repo and excluding .gitignore and untracked files

Features

  • Zips a git repository excluding files specified in .gitignore
  • Optionally includes untracked files
  • Additional archive formats planned for future releases

Installation

Install with uv:

uv tool install zipgit

After installing, run with:

zipgit --help

Or run directly with uv:

uvx zipgit

Usage

zipgit --help
 Usage: zipgit [OPTIONS]

 Zip a git repository excluding .gitignore and untracked files.

╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --dir        -d      DIRECTORY  Directory to zip (default: current working directory `/Users/phidjohn/code/pjtlabs/zipgit`)          │
│ --gitignore  -g      FILE       Name of the gitignore file to use (default: .gitignore in target directory)                          │
│ --untracked  -u                 Include untracked files in the zip (default: prompt if untracked files are found)                    │
│ --name       -n      PATH       Name of the output zip file (default: name of the directory `zipgit.zip`)                            │
│ --yes        -y                 Automatic yes to prompts; assume 'yes' as answer to all prompts and run non-interactively.           │
│ --help                          Show this message and exit.                                                                          │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
zipgit
[01/29/26 23:08:22] INFO     ZipGit v1.0.0
                    INFO     Scanning directory: /Users/jdoe/myrepo
                    INFO     1071 files found
                    WARNING  Found 2 untracked files in the repository. To include them, use the --untracked flag.
                    INFO     15 files to be zipped
Proceed to create zip file /Users/jdoe/myrepo/myrepo_2026.01.29.230822.zip? [Y/n]:
Zipping files... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00
[01/29/26 23:08:25] INFO     Zip file created: /Users/jdoe/myrepo/myrepo_2026.01.29.230822.zip

If zip files are not ignored in your repo, they will be included in the zip file unless they were created by ZipGit itself.

This prevents recursive zipping of zip files created by this tool.

Files created by ZipGit are identified by a specific metadata marker.

Changelog

View the changelog here

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

zipgit-1.0.0.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

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

zipgit-1.0.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file zipgit-1.0.0.tar.gz.

File metadata

  • Download URL: zipgit-1.0.0.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for zipgit-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1e1a86d22fe06be0c221f634330bf4eeacf3c88ab648597f1cf4a2510b36be03
MD5 ad052cde8531cf06ecd2a8d31dcbff39
BLAKE2b-256 e6b25bbfc4d3a101f7fc7e75eec0835f419ebec45a7bf5e15ea9cc19937c568d

See more details on using hashes here.

File details

Details for the file zipgit-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: zipgit-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for zipgit-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4aec8759a5eadc1e2d14f8511691730e03f183c4a38cdaf3fdff3e57c4a13822
MD5 2562e2da1291e2a476acf353215ca88f
BLAKE2b-256 52c82fb5b175b1946404aa179391cd79ccbd63c8c2133b27b7c762848a0b52e3

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 Pingdom Monitoring Sentry Error logging StatusPage Status page