3

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

为了整理东西,我遵循了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.

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

4

2 回答 2

3

我想你可能忘记了步骤

$ git add .gitignore

在尝试提交之前,或者你打错了,当你应该给予的时候

$ git commit -m "Add credentials.yml to .gitignore"

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

于 2012-12-11T16:49:18.577 回答
0

只需在将文件添加到git add命令时提供文件路径,它对我有用

$ git add mainFolder/.../file.extension

注意: mainFolder 将是您的仓库中的文件夹

于 2020-09-07T10:06:10.057 回答