Crates.io | git-mix |
lib.rs | git-mix |
version | 0.1.5 |
source | src |
created_at | 2017-07-31 15:13:16.903335 |
updated_at | 2017-08-01 15:43:04.563079 |
description | Mix the git data with AES-256-ECB mode |
homepage | |
repository | https://github.com/detailyang/git-mix |
max_upload_size | |
id | 25819 |
size | 49,301 |
git-mix is inspired by git-crypt but implemented by rust.
Based on Git Attributes. Using the “clean” and “smudge” filters , we can can set a filter for particular paths before they’re checked out and staged as the following:
Thanks to cargo :)
cargo install git-mix
private/* filter=git-mix
.gitattributes !filter
git-mix gen
to generate the config for defining the filter git-mix
[filter "git-mix"]
clean = git-mix encrypt --key BiqdSyKwmnIFDKg1LzXIg5eEM3RWbdUb
smudge = git-mix decrypt --key BiqdSyKwmnIFDKg1LzXIg5eEM3RWbdUb
append template to .git/config
remember the key, or you can reset the key which is required 32 bytes by git-mix genkey
or yourself
commit the private data and push remote to checkout the mixed data:)
git-mix gen --key <key>
to generate the filter template❯ git-mix gen --key BiqdSyKwmnIFDKg1LzXIg5eEM3RWbdUb 127ms
[filter "git-mix"]
clean = git-mix encrypt --key BiqdSyKwmnIFDKg1LzXIg5eEM3RWbdUb
smudge = git-mix decrypt --key BiqdSyKwmnIFDKg1LzXIg5eEM3RWbdUb
To contribute to git-mix, clone this repo locally and commit your code on a separate branch.
PS: PR Welcome :rocket: :rocket: :rocket: :rocket:
GitHub @detailyang
git-mix is licensed under the MIT license.