Skip to main content

Package to email color git diff

Project description

git maildiff

Python Version PyPI - License Issues - Open

maildiff is a simple git command to send diff in color to a reviewer or co-worker through email.

Install

Navigate to the git-maildiff directory you cloned or downloaded from terminal:

pip install .

Uninstall

pip uninstall maildiff

Setup Config

git config --global maildiff.mailto recipient@email.com

git config --global maildiff.smtpserver smtp.gmail.com

git config --global maildiff.smtpserverport 587

git config --global maildiff.mailFrom sender@email.com

git config --global maildiff.smtpencryption tls

e.g. Gmail uses tls encryption

If you forget to run the above setup, the git maildiff command will prompt each one by one and update .gitconfig. The email password is stored in the OS keychain.

Usage

git maildiff - Email the diff of committed or uncommitted changes in color to multiple recipients and allows attaching patches.

git maildiff -d 'HEAD^1' - will email the diff.

When no -diff or -d flag is passed, the default value is git diff HEAD^ HEAD.

git maildiff -to email@domain.com - will email diff to this email address.

git maildiff -v - use the -v flag to enable verbosity and display what command is run and what is the result of the executed command.

type git maildiff -h in shell for more help.

Note

If you are behind a proxy server and are having issues accessing a git repository, you can update gitconfig to add proxy settings:

git config --global http.proxy http://mydomain\\myusername:mypassword@myproxyserver:8080

Module Structure

emaildiff/
├── diff/
│   ├── generate.py    — converts git diff output to syntax-colored HTML
│   └── validate.py    — validates diff output and repository state
├── mail/
│   ├── send.py        — SMTP email sending with HTML content and attachments
│   └── validate.py    — email address validation
└── maildiff_cmd.py    — CLI entry point and orchestration

Dependencies

Type git maildiff -h for help in command line / terminal

License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for more details.

Contact

For any questions or issues, please open an issue on this GitHub repository or contact Sanjeev Kumar


⭐️ Don't forget to star the repository if you find it useful!

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

maildiff-3.1.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

maildiff-3.1.0-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file maildiff-3.1.0.tar.gz.

File metadata

  • Download URL: maildiff-3.1.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for maildiff-3.1.0.tar.gz
Algorithm Hash digest
SHA256 66bb7c8fa449c508b130d34f5d25e35b11e68edb01e537f7dd486843ca947c5d
MD5 bb92e8e9d17863116375f744b4fb01ea
BLAKE2b-256 8520a50c396c0217195b62c5190448ff470fbe6d0a0aee806d2c706367b5616a

See more details on using hashes here.

File details

Details for the file maildiff-3.1.0-py3-none-any.whl.

File metadata

  • Download URL: maildiff-3.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for maildiff-3.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 13abb4c4bc2b9417060702f796dae8c245c489c97ee8d69e32b54f0aad606db0
MD5 2fb5532b12e54b3625792e110443e9c4
BLAKE2b-256 a75d7698f64f07703ea3f06163d703abceb83da433d04dbc79203d3f52ea410f

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