Keeping a file or directory out of a Git or GitHub repository
Published on 26th August 2024 Estimated Reading Time: 2 minutesRecently, I have begun to do more version control of files with Git and GitHub. However, GitHub is not a place to keep files with log in credentials. Thus, I wanted to keep these locally but avoid having them being tracked in either Git or GitHub.
Adding the names to a .gitignore
file will avoid their inclusion prospectively, but what can you do if they get added in error before you do? The answer that I found is to execute a command like the following:
git rm -r --cached [path to file or directory with its name]
That takes it out of the staging area and allows the .gitignore
functionality to do its job. The -r
switch makes the command recursive, should you be working with the contents of a directory. Then, the --cached
flag is what does the removal from the staging area.
While the aforementioned worked for me when I had an oversight, the following is also suggested:
git update-index --assume-unchanged [path to file or directory with its name]
That may be working without a .gitignore
file, which was not how I was doing things. Nevertheless, it may have its uses for someone else, so that is why I include it above.