Возможно ли игнорировать файл/папку через .gitignore, которые уже есть в репозитории?

Да, возможно игнорировать файлы или папки, которые уже есть в репозитории, с помощью файла .gitignore. Однако, чтобы достичь этого, нужно сделать несколько шагов.

Первый шаг - удалить файлы или папки, которые нужно игнорировать, из репозитория. Делается это с помощью команды git rm --cached, где --cached означает, что файлы/папки нужно удалить только из индекса git и не трогать локальные файлы.

Например, чтобы удалить файл config.ini, нужно выполнить следующую команду:

git rm --cached config.ini

Если нужно удалить папку logs и все ее содержимое, выполните команду:

git rm --cached -r logs

После удаления файлов или папок из индекса git, можно добавить их в файл .gitignore, чтобы они больше не отслеживались. Откройте файл .gitignore в текстовом редакторе и добавьте имена файлов или папок, которые хотите игнорировать.

Например, чтобы игнорировать файл config.ini, добавьте следующую строку в файл .gitignore:

config.ini

Если нужно игнорировать папку logs и все ее содержимое, добавьте следующую строку:

logs/

После добавления файла .gitignore с соответствующими правилами игнорирования в репозиторий, все файлы и папки, указанные в этом файле, будут проигнорированы git'ом в будущем. Однако, уже отслеживаемые файлы или папки, которые были удалены из индекса git с помощью команды git rm --cached, не будут автоматически удалены из локальной файловой системы.

Если вам нужно удалить такие файлы или папки из репозитория, выполните команду git commit после выполнения команды git rm --cached. Это сохранит изменения и удалит файлы или папки в репозитории.

Но стоит помнить, что игнорирование файлов или папок с помощью .gitignore не означает их полного удаления из репозитория. Они всё еще будут доступны в истории коммитов и могут быть восстановлены. Если вам нужно полностью удалить файлы или папки из репозитория, вам нужно использовать команду git filter-branch, но этот процесс сложнее и может быть опасен, поэтому будьте осторожны при его использовании.