Skip to main content

A small python program to export files changed between git commits or branches to a zip file retaining the directory structure.

Project description

gitzip

Export all the changed files between two git commits or branches to a zip file including the directory structure.

gitzip usage

Navigate into your repositorys base directory. Then execute the following command.

python -m gitzip export.zip 0c321f2 master

This will create a export.zip file containing all files that changed between commit 0c321f2 and the current master branch. The files will have the contents of the current branch/commit that is checked out in your current repository. If the changed files are in a subdirectory, this subdirectory is created in the zip file.

Installation

Via pip

pip install gitzip

From source

To run this program from the code directly, python and poetry (pip install poetry) are required. Clone or download the repository.

To install all the dependencies, use your command line and navigate to the directory where this README file is located in. Then run

poetry install

For development

For development installation perform the From source installation.

For installing new packages, always run

poetry add <pip-package-name>

instead of pip install <pip-package-name>.

Launch the program either check out the Execution section or use the Run and Debug-side panel of VSCode.

If the interpreter of the virtual environment does not show up in VSCode, add it manually. The virtual environments are located in {cache-dir}/virtualenvs/<venv-name>/Scripts/python.exe where the {cache-dir} depends on the operating system (~/.cache/pypoetry, ~/Library/Caches/pypoetry or C.\Users\%USERNAME%\AppData\Local\pypoetry\Cache).

Execution

To execute the program use

poetry run python -m gitzip

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

gitzip-2.0.0.tar.gz (10.2 kB view hashes)

Uploaded Source

Built Distribution

gitzip-2.0.0-py3-none-any.whl (10.9 kB view hashes)

Uploaded Python 3

Supported by

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