我已经尝试使用sed来更改我的git存储库中的所有文件(我在意识到它正在更改git文件后点击了Control-C)。现在我在尝试提交时收到此消息:
$ commit -a
fatal: could not open '.git/COMMIT_EDITMSG': Permission denied
我该怎么办?更改文件会相当困难(我一直在尝试用字符串a
替换所有出现的字符串b
,但许多文件中已经发生了b
。
我没有任何存储库备份。
编辑:其实我有一个,但它以类似的方式搞砸了(我这样做是为了测试一些东西,之后没有用它作为git存储库)。
答案 0 :(得分:3)
.git/config
。我能想象的唯一导致权限被拒绝编辑提交日志的错误是编辑器设置无效git fsck
。如果它给你错误,它可能是不可恢复的,你需要获得存储库的另一个副本(重新克隆上游,恢复备份等)。答案 1 :(得分:0)
您可以克隆存储库并将.git
目录移动到存在问题的文件夹中。
git clone repo-address tmp-dir
mv tmp-dir/.git issue-dir
rm -rf tmp-dir
issue-dir
是您的目录。