gpt4 book ai didi

git - 如何删除存储库中的文件,同时在本地保留(和忽略)它们?

转载 作者:太空狗 更新时间:2023-10-29 13:34:33 25 4
gpt4 key购买 nike

我错误地将一些本地项目文件添加到 git 存储库并提交/推送了它们。

我想从远程存储库中删除这些文件,将它们保存在本地,并在以后的提交/推送中忽略它们。

解决这个问题的最佳方法是什么?

最佳答案

最干净的解决方案如下:

  • git rm --cached 本地的额外文件(注意 --cached 选项将这些文件保存在您的工作目录中),
  • 将它们添加到您的 .gitignore 文件和 git commit -A -m "..." 之后,
  • 推送您的分支(没有重写历史记录,但以前的历史记录将保留对这些文件的引用)。

如果您认为没有太多人从您的远程仓库中提取数据(理想情况下没有),您可以:

  • 在本地修复你的提交历史
    (git rebase --interactive first-commit-with-files^:'^' 引用第一个引入错误文件的父提交。
    git rm --cached 文件,然后重放其他提交,除非其中一些提交也对相同文件进行了修改。
    Other solutions here -- git filter-branchgit rebase),
  • push --force 你的分支,
    (但是,请准备好向人们指出 RECOVERING FROM UPSTREAM REBASE 手册页的 git rebase 部分)。
    (参见 definition of upstream here)

关于git - 如何删除存储库中的文件,同时在本地保留(和忽略)它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3160764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com