Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ignoring a directory from a Git repo after it's been added

Tags:

git

gitignore

I've learned how to exclude an entire directory in git (add a line bin/ to .gitignore). And I've learned how to ignore files "after the fact" (i.e. after they have been added to git):

git rm --cached <filename> 

How do I ignore an entire directory (e.g. bin/) after it has been added to a Git repo?

I tried git rm --cached bin/ but all I received was the error:

fatal: pathspec 'bin/' did not match any files

When I tried (at the root directory, where .git exists) git rm --cached MyProj/bin/ the error is different:

fatal: not removing 'MyProj/bin/' recursively without -r

What does this mean and will I need to commit and/or branch this now?

like image 394
WinWin Avatar asked Jul 08 '11 00:07

WinWin


People also ask

How do I ignore a folder in git repository?

If you want to maintain a folder and not the files inside it, just put a ". gitignore" file in the folder with "*" as the content. This file will make Git ignore all content from the repository.

How do I force git to ignore a file?

Use Git update-index to ignore changes To resume tracking, run the git update-index command with the --no-skip-worktree flag. Or, you can temporarily stop tracking a file and have Git ignore changes to the file by using the git update-index command with the assume-unchanged flag.


1 Answers

I was able to get this working with git rm -r --cached bin/ (note the recursive -r)in the root of the repo - are you talking about finding the bin directories and untracking them?

You will have to commit before the exclusion is reflected.

I just saw that you were on Windows. This was in Terminal on OSX, just a heads up.

like image 200
Nic Avatar answered Sep 22 '22 06:09

Nic