如何强制重新解密我的本地transcrypt对象?

时间:2016-09-30 19:18:27

标签: git encryption

远程git上的Transcrypt触发器更改从原始文件中提取文件的最新加密版本并在本地解密。

我丢了我的本地密钥,因此解密失败,但加密的transcrypt相关文件的最新git版本仍然存在于我的本地计算机上。

我意识到自己的错误并修复了我的本地transcrypt加密密钥。

现在,Git认为这些文件是最新版本(它们与远程源相比),但它们是加密的。 Git和transcrypt处于鸡与蛋的情况:我无法强制git从远程源重新提取文件,我无法通过转换来重试解密。

我尝试过切换分支机构,但有时也可以。这并不总是有效,因为transcrypt相关文件在远程分支上不一定是不同的。我能够将当前分支克隆到新分支,修改每个加密文件,然后在本地拉出新分支。这使得transcrypt松散而且有效。必须有一种更优雅的方式来做到这一点!

我需要运行哪些命令(git和/或transcrypt)来重新解密我的本地文件?

1 个答案:

答案 0 :(得分:4)

好的,我终于明白了:

transcrypt -d  # (dumps current transcrypt configuration, including key)
transcrypt -f  # (flushes transcrypt credentials and encrypts local files)

然后粘贴transcrypt配置行(从上面的transcrypt -d转储)到重新初始化设置并解密本地文件。

此过程大约需要30秒;比远程分支方法快得多。