Git по-прежнему отслеживает файлы в файле gitignore

#windows #git #visual-studio-code #gitignore

#Windows #git #visual-studio-code #gitignore

Вопрос:

у меня возникла следующая проблема с gitignore в Windows (которую я использовал в сочетании с vscode, если эта информация важна)

я попробовал простой пример, чтобы не усложнять ситуацию.

моя корневая папка содержит:

 maininterface.py
.gitignore
logs/dev.log
  

мой файл gitignore содержит только одну строку:

 logs/
  

при вводе статуса git я получаю следующее:

 Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        logs/
        maininterface.py
  

Я что-то упустил? журналы каталогов не должны находиться в неотслеживаемых файлах.
Я пытался искать решения, многие люди предлагают git rm --cached logs
У меня это не работает, я получаю :

 fatal: pathspec 'logs' did not match any files 
  

(Я тоже пробовал git rm --cached logs/dev.log , та же проблема)

Кстати, я не использовал git add ни для одного из файлов.

Спасибо, если у вас есть совет…

Комментарии:

1. можете ли вы запустить git check-ignore -v logs и добавить вывод к своему вопросу?

2. Я только что попробовал ваше предложение. команда не вызывает проблем. но git status выдает все тот же результат

3. Выдает ли это результат? или он молчит?

4. он молчит… нет вывода

5. это означает, что ваша папка не соответствует никакому gitignore шаблону.

Ответ №1:

Проверьте, не содержит ли ваш .gitignore файл символов-паразитов.

Например: спецификация в начале файла заставит git попытаться выполнить поиск "{xEFxBBxBF}logs" .


[редактировать] : я забыл, что powershell UTF-16 по умолчанию записывает (или UCS-2 ), вы правильно обнаружили, что поверх спецификации ваш файл был фактически закодирован UCS-2 .

Комментарии:

1. .gitignore свободен от паразитов… он содержит только одну строку. и я специально создал его с помощью команды echo…

2. вы используете Windows? например, powershell добавляет спецификацию в стандартный вывод команды …

3. либо проверьте шестнадцатеричное содержимое вашего файла (предлагает @ od rioV8 ), либо откройте его в редакторе, который сообщит вам, есть ли он (например, Notepad )

4. да, я в Windows. Подскажите, пожалуйста, как проверить, добавлена ли эта спецификация или нет?

5. У вас установлен Notepad ? Если вы откроете файл с помощью Notepad , внизу вы увидите аннотацию с надписью UTF-8 with BOM или UTF-8 no BOM . Где-то в меню ( Edit если я правильно помню) есть пункт для явного преобразования UTF-8 no BOM .

Ответ №2:

Проблема решена. в Notepad это была проблема с кодировкой …!

Большое вам спасибо за помощь