Sanix-Darker / gaga

a git hook that encrypt some of your file with AES-256 and openssl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GAGA

"gaga" Because am not good at names and i was listening to lady gaga while coding this.

gaga.mp4

Gaga is a git hook that use openssl to encrypt & decrypt files you want to version on a public repository but keep it private. This hook use "basic 256 AES" symmetric encryption, so you're prompted with a passphrase before a commit or after the pull from remote.

HOW SET IT UP

# Clone and install
git clone https://github.com/sanix-darker/gaga
cd gaga
bash ./install.sh # this will just install openssl (and maybe some little requirements)

# Supposing you're working on the repodir
cd gaga
# you copy 'pre-commit' and 'post-receive'
cp {./pre-commit,./post-receive} /path/to/your/repo/.git/hooks/

# you can add files in your /path/to/your/repo/.gitgaga file
# and all those are going to be :
# - git ignore
# - encrypted/decrypted for each commit/pull you do

Now for each commit/pull, you're going to have encrypt/decrypt made on files specified on your /path/to/your/repo/.gitgaga.

BONUS

NOTE: you can set a $GAGA_PASSPHRASE to have it work directly with no prompt asked before commiting/pulling code.

export GAGA_PASSPHRASE=umbrella

AUTHOR

darker

About

a git hook that encrypt some of your file with AES-256 and openssl


Languages

Language:Shell 100.0%