.gitignore исключить конкретный файл
Я пытаюсь использовать исключить templates.js
расположенном в . Мой
4 ответов
в отличие от того, что может предложить название "игнорировать". .gitignore
консультируется только тогда, когда вы git add
files: другими словами, файл, уже добавленный в (индекс) репозитория, не будет исключен на основе .gitignore
.
сначала вам лучше изменить .gitignore
таким образом, что файл больше не добавляется. Добавьте следующую строку в :
public/app/template.js
Далее необходимо исключить файл из репозитория. Наверное, ты!--22-->не хочу удалять файл из вашей файловой системы это можно сделать с помощью:
git rm --cached public/app/template.js
на --cached
флаг гарантирует, что файл не будет удален из файловой системы. (Если не важно, вы можете использовать git rm public/app/template.js
, но это приведет к удалению файла).
фон
причина .gitignore
не используется активно, потому что иногда вы можете переопределить .gitignore
. Скажем, например, вы не хотите отслеживать *.log
файлов, вы можете указать *.log
на .gitignore
. Но если есть конкретный, который вы хотите отслеживать, вы можете добавить git add -f some.log
. The -f
силы флаг git
добавить файл.
после того, как файл был "добавлен" в репозиторий git один раз, он будет продолжать отслеживаться независимо от того, указан ли он в списке .файла.gitignore
Я предполагаю, что вы добавили шаблон.JS-файл ранее, и в этом случае он будет продолжать отслеживать изменения, пока вы не удалите его из репозитория. Как только файл будет удален из репозитория, он будет правильно проигнорирован через .файла.gitignore
способ удаления файла из git репозиторий (командная строка) без удаления это
git rm --cached FILENAME
затем, как только вы это сделаете и попытаетесь совершить с файлом в вашем gitignore, он этого не сделает.
обратите внимание, что если вы специально добавляете файл, который у вас есть в gitignore, ваше ручное добавление файла переопределит gitignore.
если вы уже отслеживаете файл (git add
его и git commit
),.gitignore
не поможет.
Я считаю, что вы хотите, чтобы остановить отслеживание файла, и затем использовать .gitignore
исключить его. Чтобы остановить отслеживание файла, но сохранить файл, используйте:
git rm --cached <file>
в этом случае вы можете остановить отслеживание templates.js
С
git rm --cached public/app/templates.js
как пояснил .gitignore
игнорирует только добавляемое содержимое. Например, если вы часто используете git add .
и templates.js
в своем .gitignore
, тогда git не добавит его.