在 Rails 应用程序中,我意识到我已将敏感文件 config/credentials.yml 提交到 git 存储库。

为了整理东西,我跟着 advice on GitHub 跑了

git filter-branch --index-filter 'git rm --cached --ignore-unmatch config/credentials.yml' --prune-empty --tag-name-filter cat -- --all

然后添加到 gitignore
echo "config/credentials.yml" >> .gitignore

当我尝试提交这些更改时
git add .gitignore
git commit -m "ignored credentials.yml"

我收到一条消息
error: pathspec 'adds credentials.yml to gitignore' did not match any file(s) known to git.

我该如何解决这个错误?或者,如何撤消更改并安全地恢复到 Remote 上的 git 历史记录?

最佳答案

我想你可能忘记了步骤

$ git add .gitignore

在尝试提交之前,或者然后你打错了,当你应该给
$ git commit -m "Add credentials.yml to .gitignore"

流程建议 [对于 repo 内容] 是非常危险的,因此必须非常小心地详细执行所有步骤。

关于ruby-on-rails - git 错误是什么意思 "pathspec did not match any file(s)",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13824590/

10-13 06:36