Программы и приложения

Устранение: Gitignore не работает

GitHub стал ведущим пионером в области совместной работы над кодом и обмена репозиториями. GitHub — это, прежде всего, программное обеспечение для контроля версий, которое позволяет пользователям контролировать распределенный контроль версий и SCM (управление исходным кодом). Эта платформа используется крупными предприятиями и компаниями по всему миру.

.gitignore

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

Что такое .gitignore?

Git (или GitHub) видит каждый файл в вашем рабочем каталоге. Он характеризует каждый файл как один из трёх:

  • Отслеженные: Эти файлы либо зафиксированы, либо помещены ранее в историю.
  • Не отслеживается: Это файлы, которые не были ранее поставлены или зафиксированы.
  • Игнорируется: Это файлы, которые пользователь сам велел Git’у полностью игнорировать.

Эти игнорируемые файлы могут варьироваться от сценария к сценарию и в основном представляют собой файлы машинной генерации или артефакты сборки. Это обычная практика; вы можете игнорировать различные другие файлы в соответствии с вашими собственными потребностями. Вот некоторые примеры таких файлов:

  • Скомпилированный код: Эти файлы обычно имеют расширение .класс, .pyc, .ccp и т.д.
  • Скрытые системные файлы: Это файлы, которые используются системой для своей работы, но скрыты от посторонних глаз, например, DS_Store или Thumbs.db и т.д.
  • Выходные каталоги сборки: В основном это каталоги /bin, /out и т.д.
  • Кэши зависимостей: Эти файлы могут быть содержимым модулей /node или /packages.
  • Конфигурационные файлы IDE: Это файлы конфигурации, которые в основном создаются или управляются вашей программой IDE.
  • Файлы, генерируемые во время выполнения: Есть некоторые программы, которые создают файлы во время выполнения. При выполнении любого из этих кодов во время выполнения в рабочей папке могут быть сгенерированы некоторые файлы, которые вы можете проигнорировать в Git.

Тот файл, который вы хотите проигнорировать, отслеживается в специальном файле под названием .gitignore, который чаще всего проверяется в корне вашего рабочего репозитория. Согласно официальной документации GitHub по этому вопросу, не существует специальной команды gitignore. Вместо этого вам нужно вручную отредактировать файл, который вы хотите игнорировать. The .Файл gitignore содержит шаблоны, которые сопоставляются с именами файлов в вашем рабочем репозитории и используются для определения того, следует ли игнорировать конкретный файл или нет.

Что вызывает .gitignore не работает?

Сайт .Функция gitignore может прекрасно работать, но вы, возможно, не настроили ее должным образом. Во всех наших исследованиях мы пришли к выводу, что модуль действительно работает. Причина, по которой кодеры не могут использовать эту функцию, заключается в том, что они неправильно настроили файл или в коде не соблюдаются некоторые условия.

Вот несколько решений, которые могут вам помочь. Каждое решение может быть неприменимо в вашем случае, поэтому убедитесь, что вы переходите к следующему, если начальные условия не выполняются.

Решение 1: Проверка .gitignore Файл

Интересный случай произошел, когда мы увидели, что .файл gitignore был создан в неправильном формате. Эта конкретная проблема возникала, когда пользователи создавали файл с помощью стандартного приложения Notepad в Windows OS. Оказалось, что Notepad записывает файл в Unicode вместо ANSI-формата. В этом решении мы сохраним изменения в Блокноте в правильном формате .gitignore и посмотрим, устранит ли это проблему.

Примечание: Вы должны удалить расширение .txt из файла при создании нового файла с помощью Блокнота.

  1. Написав код или изменения в новом текстовом документе в Блокноте, нажмите на кнопку Файл и выберите Сохранить как.
Сохранить как – Блокнот
  1. Теперь перед Кодировка, выберите ANSI. Теперь удалите расширение файла .txt и сохраните файл с именем ‘.gitignore‘. Выберите правильный каталог и сохраните.
Выбор ANSI в качестве типа кодировки
  1. Теперь перейдите в каталог и проверьте, создан ли правильный файл. Теперь снова протестируйте его с помощью Git и проверьте, работает ли функция игнорирования так, как ожидалось.

Разработчикам следует воздержаться от использования стандартного Блокнота в Windows. Вместо этого следует использовать «программистский» блокнот. Некоторые примеры включают Блокнот++ etc. В этом случае у вас не будет проблем, подобных этим.

Примечание: Если ваш файл уже сохранён в формате UNICODE, вам следует сохранить его содержимое в формате ANSI, если вы хотите, чтобы ваш файл был правильно распознан Git’ом.

Решение 2: Проверка файла, который вы пытаетесь игнорировать

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

Вы должны посмотреть на свою структуру (репозиторий) и убедиться, что файл, который вы сейчас пытаетесь игнорировать, не добавлен в репозиторий. Если это так, то вам нужно удалить файл из репозитория и после фиксации последних изменений добавить его имя в .gitignore (вы также можете скопировать содержимое файла и после удаления продублировать его с другим именем).

Решение 3: Повторное добавление файлов в репозиторий

Если вы уже добавили правила в .gitignore, но файлы, которые вы хотите игнорировать, уже добавлены, мы можем добавить их заново. Добавление означает, что мы удалим все из индекса Git’а, а затем снова добавим все в ваш репозиторий. Когда мы снова будем добавлять файлы с нуля, будут учитываться правила, которые вы добавили в .gitignore, и в индекс будут добавлены только нужные файлы.

Примечание: Перед выполнением этого решения вам также следует сделать резервную копию кода в другом месте. Всегда полезно иметь резервную копию на всякий случай.

  1. Выполните следующую команду. Это разгруппирует и удалит пути к вашим файлам из git-индекса рекурсивным способом.
git rm -r --cached .
  1. После этого выполните следующую команду. Это добавит все ваши файлы обратно, и с тех пор .gitignore будет иметь правила, и только нужные файлы будут обновлены.
git add .
  1. Теперь мы зафиксируем все ваши файлы обратно в индекс, используя приведённый ниже код:
git commit -m ".gitignore теперь работает"

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

Добавить комментарий