J’ai un sous-dossier appelé objects
avec des fichiers appelés *.object
que je ne veux pas suivre par git (Windows).
Dans .gitignore, j’ai essayé diverses combinaisons (par exemple, **/objects/*
ou **/objects/*
etc.) en vain: chaque fois que je fais le git status
je vois:
# Untracked files: # (use "git add ..." to include in what will be committed) # # foo/src/objects/a.object # foo/src/objects/b.object
Ce n’est que lorsque j’ajoute *.object
à .gitignore que les fichiers disparaissent de la liste des fichiers non suivis. Qu’est-ce qui ne va pas avec mes wild cards?
Aussi, quand est-ce que git update-index
requirejs et quand dois-je faire git rm --cached myfile
?
Existe-t-il une fonctionnalité générique pour rm comme git rm --cached **/foo/*.zip
?
UPDATE: De la même manière, l’ajout de la ligne .gitignore
à .gitignore
(pas toujours souhaitable mais quand même) n’a aucun effet. Est-ce étrange parce que les fichiers ont peut-être été suivis dans le passé?
OK, bien que les caractères génériques ne fonctionnent pas (dans Windows apparemment), il semble que l’on puisse supprimer un dossier entier avec:
git rm -r --cached "path/to/foo/"
Je comprends que –cached ne lance que des instants – vous devez vous git commit
à les supprimer du repository.