Remove files from repository (NOT work tree)

Posted in Git, 14.02.2014 12:02

Datei aus dem Repository entfernen (im Dir belassen), auch wenn bereits git commit ausgeführt wurde:


git rm  --cached FILE

Für Directories entsprechend:


git rm -r --cached .

Wenn noch KEIN commit ausgeführt wurde:


git reset HEAD FILE

Wenn die lokale .gitignore schon geändert wurde und sie trotz o.g. Maßnahmen noch als geändert auftaucht, hilft nur noch


git update-index --assume-unchanged .gitignore

Damit das Problem gar nicht erst auftaucht, könnte man auch in die .git/config schreiben:



[core]
...
excludesfile = .gitignore


Auch wenn

filemode = false

zu spät gesetzt wurde, sind alle Dateien deren permissions mit chown angepaßt wurden, schon als geändert markiert es hilft nur noch: 


git update-index --assume-unchanged <file>

FUnktioniert auch mit Directories, aber Achtung: die Dateien, deren Änderungen getrackt werden sollen, muß man dann logischerweise ausnehmen.

Tipp von

http://blog.pagebakers.nl/2009/01/29/git-ignoring-changes-in-tracked-files/