#git #phpstorm #gitignore
Вопрос:
Я использую PhpStorm в качестве своей среды разработки, и он настраивает .gitignore
файл в каталоге под названием .idea
. Есть папки и файлы, которые я хочу игнорировать, но я не могу перейти в предыдущую папку, несмотря ни на что.
Давайте вызовем файл example.txt
. Дерево папок выглядит следующим образом:
- /Project
- /.idea
- .gitignore
- workspace.xml
- /src
- example.txt
Как мне игнорировать example.txt
файл? Я пытался ../src/example.txt
, src/example.txt
, /../src/example.txt
Комментарии:
1. Создайте новый
.gitignore
файл вProject
папке и игнорируйтеexample.txt
его.
Ответ №1:
.gitignore
применяется к каталогу и его подкаталогам. это не относится к родственному или родительскому каталогу.
игнорировать src/example.txt
то, что вы могли бы:
- создайте
.gitignore
файл вsrc/
каталоге, содержащий, напримерexample.txt
- создайте
.gitignore
файл в родительском каталоге, содержащий, напримерsrc/example.txt
Комментарии:
1. Хорошо, я думал, что у вас не может быть более 1 файла .gitignore. Большое спасибо
Ответ №2:
Если вы добавили src/example.txt
в репозиторий, git не будет игнорировать его даже при добавлении src/example.txt
.gitignore
. Вам нужно будет удалить его из репозитория следующим образом:
git rm --cached src/example.txt
Эта команда удаляет файл только из репозитория git. Исходный файл останется на src/example.txt
Кроме того, чтобы игнорировать src/example.txt
, вам нужно будет создать .gitignore
файл в каталоге верхнего уровня (в проекте) и поместить src/example.txt
в него.
Ответ №3:
Если вы уже отправили свои файлы в git, хотя вы добавляете example.txt
.gitignore
их , все еще существуют кэшированные журналы.
Таким образом, эти кэшированные журналы тоже должны быть удалены. Запустите следующий код.
$ git rm --cached `src/example.txt`
А также, чтобы игнорировать все файлы в src
папке, затем добавьте src/
в .gitignore
. Тогда он будет игнорировать все файлы в папке src/
с src
самой папкой.
Если вы хотите удалить все отслеживаемые файлы, выполните следующий код.
$ git rm -r --cached .
С помощью приведенной выше команды вы можете очистить все отслеживание кэша.