git - 从 Git 存储库中删除现有文件

标签 git

我希望 git 停止在我们的存储库中跟踪我的本地开发日志 (log/development.log)。这可能吗?我该怎么做?

最佳答案

只是一次给出完整的答案:

  1. 来自 klemens:您需要将文件添加到您的 .gitignore文件在 repo 协议(protocol)中不需要的文件上方的某个地方。即

    $光盘 $ 猫 >> .gitignore 开发日志 C-d

  2. 来自米。 narebski:然后您需要通过执行“git rm --cached <file> 然后提交此删除”来从存储库中删除文件

如果您还希望让 repo 看起来好像它从未跟踪过该文件,那会更加复杂并且非常令人沮丧,因为它不仅会为您历史上的每个提交创建全新的提交,从而破坏互操作性克隆你的 repo 的其他人之间的一种令人讨厌的方式,但它也会让每一个提交都未经测试(假设你在提交之前测试你的提交)。

记住这个警告,如果这是您的目标,您正在寻找的工具是 filter-branch .第一个示例完全符合我的描述。

关于git - 从 Git 存储库中删除现有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4124792/

相关文章:

asp.net-mvc - 进程标识设置为用户的 IIS 7.5 有错误的 USERPROFILE

git - 看看在一个 git 命令中会 merge 什么?

git - 如何列出根上的 git 子树?

git - 需要帮助来理解 merge 冲突示例

svn - Git 和 Github 的最佳工作流程

git - 暂存而不提交 (git)

git - 马 git : how to see pre-commit hooks before editing commit log?

git - git在Visual Studio在线构建代理上获取标签

Git add 和 git commit 混淆

git - 在git中取消暂存已删除的文件