.gitignore не работает в программе github для mac

Я искал вокруг и нашел несколько руководств, объясняющих, как решить проблему, к сожалению, они не сработали.

По сути, у меня есть файлы в .gitignore, которые программа github для Mac, которую я использую, пытается зафиксировать, несмотря на то, что они игнорируются. Я нашел несколько блогов и даже другие сообщения о stackoverflow, в которых говорилось, что вы можете исправить это с помощью командной строки, и давались объяснения, как это сделать. К сожалению, у меня нет абсолютно никакого опыта работы с командной строкой, и все мои попытки следовать их указаниям не помогли решить проблему.

Есть ли способ решить эту проблему без использования командной строки? и если нет, может ли кто-нибудь сказать мне, как использовать взлом командной строки, найденный здесь среди другие места:

git rm -r --cached .
git add .
git commit -m "fixing .gitignore"

person Nathan B    schedule 22.01.2013    source источник


Ответы (1)


Эти файлы уже отслеживаются, и GitHub для Mac пытается зафиксировать изменения? .gitignore предотвращает только добавление/фиксацию неотслеживаемых файлов с помощью git. Как только файл становится отслеживаемым, .gitignore перестает обращаться к нему.

«Хак», на который вы ссылаетесь, на самом деле просто просит git удалить все файлы в репо, а затем снова добавить все это обратно. Это работает, потому что .gitignore будет использоваться при повторном добавлении файлов (поскольку он используется для любых файлов, которых еще нет в индексе, а git rm -r --cached . удалил весь индекс).

person Lily Ballard    schedule 22.01.2013
comment
Интересно, но я до сих пор не знаю, как его использовать. Я открыл командную строку, скопировал и вставил в нее git rm -r --cached ., но он просто сказал fatal: pathspec '' did not match any files, и ничего не изменилось. - person Nathan B; 22.01.2013
comment
Что ты имеешь в виду? Обычно я не использую github с командной строкой, поэтому не знаю, как что-то запустить в рабочем дереве. Я просто вырезал и вставил код в командную строку, вот и все. - person Nathan B; 22.01.2013
comment
@NathanB: Под этим я подразумеваю, что вы попали в правильный каталог в своем терминале? Если вы просто запустите Terminal.app, то по умолчанию он будет находиться в вашей домашней папке (как это делает Finder). - person Lily Ballard; 22.01.2013
comment
Тогда нет. Я не знаю, как запустить его в моем рабочем дереве. Как ты это делаешь? - person Nathan B; 22.01.2013
comment
Введите cd, а затем перетащите папку, которая является вашим репозиторием, из Finder в терминал. Затем нажмите «Возврат». - person Lily Ballard; 22.01.2013
comment
Отличный ответ. Следует отметить, что у некоторых людей могут отсутствовать инструменты командной строки с установленной командой git. Если вы получаете сообщение об ошибке «команда git не найдена» при попытке использовать параметр командной строки, проверьте здесь. Также не забудьте проверить ссылку OPs для получения полных инструкций командной строки. Кэшированная команда — не единственная необходимая команда. - person Adam Johns; 29.10.2013
comment
это, кажется, не работает для меня. После этого файл игнорирования кажется полностью игнорируемым. - person v3nt; 25.11.2015