AGWA / git-crypt

Transparent file encryption in git
https://www.agwa.name/projects/git-crypt/
GNU General Public License v3.0
8.32k stars 479 forks source link

Multi-keys setup: Diff + Checkout from other branch impossible when using different keys per branch #103

Open JohannesFKnauf opened 7 years ago

JohannesFKnauf commented 7 years ago

We have a setup with 3 branches. Each branch has a separate git-crypt key. The feature we are using for that is documented in https://github.com/AGWA/git-crypt/blob/master/doc/multiple_keys.md

When checking out and unlocking branch A (which uses key A), I can neither

# git checkout B -- myfile
git-crypt: error: encrypted file has been tampered with!
error: external filter "/usr/bin/git-crypt" smudge --key-name=A failed 1
error: external filter "/usr/bin/git-crypt" smudge --key-name=A failed
fatal: myfile: smudge filter git-crypt-A failed
chandulal commented 6 years ago

I am facing the same issue. Does anyone have any solution how to use multiple keys to encrypt two different set of files?

krish7919 commented 5 years ago

A similar error here. In my case, I already had the files in plaintext in the repo, and then have removed and added the encrypted files in a branch.

git-crypt: Error: Unable to open key file - have you unlocked/initialized this repository yet?
error: external filter '"git-crypt" smudge --key-name=test' failed 1
error: external filter '"git-crypt" smudge --key-name=test' failed
fatal: filename: smudge filter git-crypt-test failed

How do I unlock or initialize if a git checkout fails? :/