I want to completely ignore a part of a git repository. The directory is currently tracked in the repository and I'd like to ensure that
I don't care particularly about the actual contents.
The problem arises with files automatically generated during build. Unfortunately, someone happened to commit them to the repository, but they cause build errors due to different paths etc. when used on different machine than their creator and consequently nasty merge conflicts.
AFAIK, .gitignore
won't work for this purpose, as it only applies to untracked files.
You can easily remove and untrack the files with git rm
which seems to be what you want to do. If the files are automatically generated during the build process, this seems to be the route you want to take.
However, if only a single person has their machine setup to properly generate these files, I believe a bigger problem exists. But to do what you want, this is the way
Start ignoring changes
git update-index --assume-unchanged <dir>
Start caring again
git update-index --no-assume-unchanged <dir>
If the file is supposed to never get into the repository, fix the problem and do it correctly...
.gitignore
file.gitignore
And you'll never have to deal with those unwanted files again because .gitignore
will avoid future git add
s of those files (unless --force
d)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With