意外提交的开发人员数据库给Git

时间:2010-04-08 21:42:35

标签: git

我不小心将我的development.sqlite3文件提交给Git,这似乎减慢了我的提交速度。我知道.gitignore,但是一旦我这样做,这会把文件从我的存储库中删除吗?我担心的是减少提交和推送时间。

3 个答案:

答案 0 :(得分:6)

没有必要使用filter-branch来实现 - 这只是在最近的一次提交中。如果没有,只需删除文件(git rm --cached <filename>)并修改您的提交(git commit --amend)。 --cached选项告诉git仅删除索引中的副本(提交暂存区域),并保留工作树中的版本。

如果它在历史记录中更远,您可以使用交互式rebase(git rebase -i <commit before the bad one> master),选择edit错误提交,并像以前一样修改/修改。当然,也一定要把它添加到你的gitignore。

请注意,如果您已推送此提交,则必须使用push -f才能获得非快进,如果其他人已将其提取,则会感到恼火(请参阅git-rebase手册页中的“从上游rebase中恢复”部分。

答案 1 :(得分:1)

试试这个:

  git filter-branch --tree-filter ´rm filename´ HEAD

答案 2 :(得分:-1)

没有。所有.gitignore文件都告诉各种Git用户界面工具在批量提交更改时忽略该文件。您仍然可以手动将任何单个文件放入Git的数据库中,并且添加entires不会从Git修订数据库中删除任何内容。