Решење: Гитигноре не ради

Показало се да је ГитХуб водећи пионир на пољу сарадње кодова и дељења спремишта. ГитХуб је првенствено софтвер за контролу верзија који омогућава корисницима контролу дистрибуиране контроле верзија и СЦМ (управљање изворним кодом). Ову платформу користе велика предузећа и компаније широм света.

Платформе попут ове имају своје техничке карактеристике и проблеме. Један специфичан проблем који су имали програмери је тај што .гитигноре није радио у ГитХуб-у. Платформа је или игнорисала .гитигноре или је делимично радила. Занимљиво је приметити да се проблем може у сваком случају мало разликовати, јер је сваки случај потпуно другачији сценарио. Међутим, решења која наводимо садржаће исправке које ће деловати универзално.

Шта је .гитигноре?

Гит (или ГитХуб) види сваку датотеку у вашем радном директоријуму. Карактерише сваку датотеку као једну од три:

  • Прати се: Ове датотеке су или урезане или инсцениране раније у историји.
  • Без праћења: Ово су датотеке које претходно нису постављене или уређене .
  • Игнорирано: Ово су датотеке за које је сам корисник рекао Гиту да их потпуно игнорише.

Ове занемарене датотеке могу се разликовати од сценарија до сценарија и углавном су датотеке које генеришу машине или граде артефакте. То је уобичајена пракса; можда игноришете разне друге датотеке према сопственим потребама. Неки примери ових датотека су:

  • Састављени код: Ове датотеке су обично са наставком .цласс, .пиц, .ццп итд.
  • Скривене системске датотеке: То су датотеке које систем користи за своје операције, али су скривене од обичног погледа, на пример, ДС_Сторе или Тхумбс.дб итд.
  • Изградите излазне директоријуме: То су углавном директорији / бин, / оут, итд.
  • Кеш меморије зависности: Ове датотеке могу бити садржај / ноде или / Пацкагес модула.
  • Конфигурационе датотеке ИДЕ: Ово су конфигурационе датотеке које углавном креира или њима управља ваш ИДЕ софтвер.
  • Датотеке генерисане током извршавања: Постоје неки програми који креирају датотеке у току рада. Ако се покрене било који од таквих кодова, неке датотеке ће се можда генерисати током извршавања у вашој радној фасцикли, а можете их занемарити у Гит-у.

Коју год датотеку желите да игноришете, прати се у посебној датотеци која се назива .гитигноре и која се углавном проверава у корену вашег радног складишта. Према званичној документацији ГитХуб-а на ту тему, не постоји посебна гитигноре команда. Уместо тога, морате ручно да уредите датотеку коју желите да игноришете. Датотека .гитигноре садржи обрасце који се подударају са именима датотека у вашем радном спремишту и они се користе за утврђивање да ли одређену датотеку треба занемарити или не.

Шта узрокује да .гитигноре не ради?

Функција .гитигноре можда ради савршено, али је можда нисте правилно конфигурисали. У свим нашим анкетама дошли смо до закључка да модул заиста ради. Разлог због којег кодери нису у могућности да користе функцију је углавном тај што нису правилно конфигурисали датотеку или постоје неки услови који нису испуњени у основном коду.

Ево неколико решења која могу да вам помогну. Свако решење можда није применљиво у вашем случају, па се побрините да пређете на следеће ако почетни услови нису испуњени.

Решење 1: Провера .гитигноре датотеке

Појавио се занимљив случај где смо видели да је датотека .гитигноре креирана у погрешном формату. До овог посебног проблема дошло је када су корисници креирали датотеку користећи подразумевану апликацију Нотепад у оперативном систему Виндовс. Испоставило се да Нотепад записује датотеку у Уницоде уместо у АНСИ формату. У овом решењу ћемо сачувати промене Бележнице у исправном формату .гитигноре и видети да ли ће то решити проблем.

Напомена: Приликом креирања нове датотеке помоћу Нотепад-а морате из датотеке уклонити наставак .ткт.

  1. Након писања кода или промена у новом текстуалном документу у Нотепад, кликните на Филе и изаберите Саве Ас .
  1. Сада испред Кодирање , одаберите АНСИ . Сада уклоните екстензију датотеке .ткт и сачувајте датотеку са именом ' .гитигноре '. Изаберите прави директоријум и сачувајте.
  1. Сада идите до директоријума и проверите да ли је креирана исправна датотека. Сада га поново тестирајте са Гит-ом и погледајте да ли функција Игноре ради како се очекује.

Програмери би требало да се уздрже од коришћења подразумеваног Бележнице у оперативном систему Виндовс. Уместо тога, требало би да користите одговарајући нотепад „програмера“. Неки примери укључују Нотепад ++ итд. У њима нећете имати проблема попут ових.

Напомена: Ако је ваша датотека већ сачувана у УНИЦОДЕ формату, требало би правилно да сачувате садржај у АНСИ формату ако желите да вашу датотеку правилно открије Гит.

Решење 2: Провера датотеке коју покушавате да игноришете

Још један услов под којим .гитигноре ради је да ваша датотека још увек не буде део спремишта . Ово је врло важан аспект, јер ако је то тачно, датотека се неће занемарити јер је већ додата у спремиште. Гит то не може занемарити чак и ако његово име или правило ставите у датотеку .гитигноре. Дакле, у суштини, Гит само игнорише датотеке које нису праћене .

Требали бисте погледати своју структуру (спремиште) и осигурати да датотека коју тренутно покушавате да игноришете није додата у спремиште. Ако јесте, морали бисте да уклоните датотеку из спремишта и након што се изврше најновије промене, додајте њено име у .гитигноре (такође можете копирати садржај датотеке и након брисања реплицирати је под другим именом) .

Решење 3: Поновно додавање датотека у спремиште

Ако сте већ додали правила у .гитигноре, али датотеке које желите да игноришете су већ додате, можемо их поново додати. Додавање значи да ћемо уклонити све из Гит-овог индекса, а затим све поново додати у ваше спремиште. Када поново додамо датотеке од нуле, имаће се на уму правила која сте додали у .гитигноре и додају се само исправне датотеке.

Напомена: Пре него што извршите ово решење, требало би да направите резервну копију кода. Увек је добро имати резервну копију за сваки случај.

  1. Извршите следећу команду. Ово ће нестати и уклонити стазе до ваших датотека из гит индекса на рекурзиван начин.
гит рм -р --цацхед.
  1. Након што се ово изврши, требали бисте извршити сљедећу наредбу. Ово ће вратити све ваше датотеке и пошто ће .гитигноре имати правила, ажурираће се само исправне датотеке.
гит адд.
  1. Сада ћемо све ваше датотеке вратити у индекс помоћу доњег кода:
гит цоммит -м ".гитигноре сада ради"

Сада прегледајте своје датотеке и погледајте да ли је проблем решен и можете ли поново да користите .гитигноре без икаквих проблема.