Git: How to remove files that are now in gitignore but were added to repo before

I have a couple of files that are in the repo and also in .gitignore.

I would like these files to be removed from the repo but not be deleted from my production server when I do git pull origin master

  • Android Studio import project with gradle changes iml files
  • Recover a commit sent as a pull-request from a deleted fork on GitHub
  • What does, “FATAL: Error computing merge base” mean?
  • Migrating from Subversion to Git how can I find a commit given a revision number?
  • How to write Git Server Hooks on Windows platform?
  • How do I sign out of the desktop version of GitHub?
  • I have tried multiple solutions but none seam to work, in each one I end up deleting the files from the server when I do a pull.

    References:

    How to make Git "forget" about a file that was tracked but is now in .gitignore?

    Remove directory from remote repository after adding them to .gitignore

    How to remove files that are listed in the .gitignore but still on the repository?

  • How can I automatically push code to Azure WebSites when I push to my BitBucket GIT Repository?
  • git diff renamed/moved and modified files but skip renamed/moved and identical files
  • git-svn display svn repository url
  • Error when trying to clear cache with a Symfony2 project
  • git - Server host key not cached
  • Change root of a branch in git
  • 2 Solutions collect form web for “Git: How to remove files that are now in gitignore but were added to repo before”

    You need git filter-branch first, then ask everybody to rebase branches created off of your old history.

    Refer to: https://help.github.com/articles/remove-sensitive-data/

    This is complex, and might cause issue, so next time be careful so not to get there.

    If you can’t do that due to some reason, then need to wait until time machine invented 🙂

    AFAIK, there is no way to mark a filepath with a “stop tracking this but keep existing version” flag.

    You will need to take one manual action when deploying the first version that includes deleting the file.

    Something like :

    cp file file.prod
    git pull
    mv file.prod file
    
    Git Baby is a git and github fan, let's start git clone.