А затем добавьте путь к .gitignore, чтобы git не пытался заставить вас добавить его позже.
grossvogel
3
Приведет ли это к тому, что (файлы в) каталоге будут удалены при его извлечении с пульта?
bstpierre
Не когда он тянет; файлы останутся удаленными локально во время процесса автоматического объединения. После этого нажатие приведет к удалению файлов на стороне сервера.
Уолтер Мундт
7
Что произойдет, если у меня будет третий пульт? Будут ли соответствующие файлы удалены в будущем? Я спрашиваю, потому что я чувствую, что это довольно распространенный вариант использования, то есть проверить некоторые файлы в репозитории, позже понять, что они расходятся между удаленными, по уважительной причине, и никогда не должен был быть в репо в первую очередь, хочу чтобы решить эту проблему, оставив все локальные проверки точно такими же, как они есть, но удалив файлы из хранилища.
Бобби Джек,
6
Для отдельных файлов вы можете сделатьgit rm --cached path/to/file
Трэвис Ридер
3
Я бы просто:
Переместите папку из рабочего дерева
git rm папка, передайте изменения
Добавить в .gitignore(или .git/info/excludes), принять изменения
это не хорошее решение - что если у вас очень большой каталог?
Иолео
вероятно, нужно использоватьgit rm -r
theUtherSide
1
@loostro просто не перемещайте его на другое блочное устройство. Большинство файловых систем просто обновляют inode файла, а не буквально перемещают весь каталог
Ответы:
Постановит удаление каталога, но ничего не коснется на диске. Это работает также для файла, например:
После этого вы можете захотеть добавить
somedir/
илиsomefile.ext
в свой.gitignore
файл, чтобы git не пытался добавить его обратно.источник
git rm --cached path/to/file
Я бы просто:
git rm
папка, передайте изменения.gitignore
(или.git/info/excludes
), принять измененияисточник
git rm -r