从repo中删除文件

时间:2015-05-01 12:03:25

标签: git

我已经定义了我的.gitignore并删除了本地的相应文件,但它们仍然出现在我的仓库中。

如何强制我的仓库使用我的本地版本?

由于

1 个答案:

答案 0 :(得分:0)

在本地删除文件后(使用git rm --cached),您仍然需要执行以下操作:

git add -A .
git commit -m "record deletion"
git push

然后,您的远程仓库上的那些相同文件将不再可见。

由于Andrey Tyukin评论below,这当然不会删除历史记录中的文件 但它似乎适合于被错误地版本化和推送的文件,只需要忽略它们。

将它们从回购历史中删除:" GitHub: Remove sensitive data"。

如果不起作用:

  • 在本地(其他地方)克隆您的远程仓库
  • 关注" How can I Remove .DS_Store files from a Git repository?"

    # remove any existing files from the repo, skipping over ones not in repo
    find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch
    # specify a global exclusion list
    git config --global core.excludesfile ~/.gitignore
    # adding .DS_Store to that list
    echo .DS_Store >> ~/.gitignore
    

然后git add,commit和push。