Parandus: Gitignore ei tööta



Proovige Meie Instrumenti Probleemide Kõrvaldamiseks

GitHub on osutunud juhtivaks teerajajaks koodikoostöö ja hoidlate jagamise valdkonnas. GitHub on peamiselt versioonihaldustarkvara, mis võimaldab kasutajatel kontrollida hajutatud versioonihaldust ja SCM-i (lähtekoodi haldamine). Seda platvormi kasutavad suuremad ettevõtted ja ettevõtted kogu maailmas.



.gitignore



Sellistel platvormidel on oma tehnilised omadused ja probleemid. Kooderite üks konkreetne probleem oli see, et .gitignore ei töötanud GitHubis. Platvorm kas ignoreeris .gitignore'i või töötas osaliselt. Huvitav on märkida, et probleem võib olla igal juhul veidi erinev, kuna iga juhtum on täiesti erinev stsenaarium. Kuid meie loetletud lahendused sisaldavad universaalselt toimivaid parandusi.



Mis on .gitignore?

Git (või GitHub) näeb kõiki faile teie töökataloogis. See iseloomustab kõiki faile kui ühte kolmest:

  • Jälgitud: Need failid on kas ajaloos varem kas sooritatud või järjestatud.
  • Jälgimata: Need on failid, mida pole varem lavastatud ega määratud.
  • Eiratud: Need on failid, mida kasutaja ise käskis Gitil täielikult ignoreerida.

Need eiratud failid võivad stsenaariumiti erineda ja on enamasti masinaga loodud failid või artefakte. See on levinud tava; võite ignoreerida mitmesuguseid muid faile vastavalt teie enda vajadustele. Mõned näited nendest failidest on:

  • Koostatud kood: Need failid on tavaliselt laiendiga .class, .pyc, .ccp jne.
  • Peidetud süsteemifailid: Need on failid, mida süsteem kasutab oma toiminguteks, kuid mis on peidetud tavavaate eest, näiteks DS_Store või Thumbs.db jne.
  • Koostage väljundkataloogid: Need on enamasti kataloogide / bin, / out jne kataloogidest.
  • Sõltuvuse vahemälud: Need failid võivad olla moodulite / node või / pakettide sisu.
  • IDE konfiguratsioonifailid: Need on konfiguratsioonifailid, mis on enamasti teie IDE tarkvara loodud või hallatud.
  • Käitusajal loodud failid: Mõned programmid loovad faile käitamise ajal. Kui kumbagi sellist koodi käivitatakse, võidakse mõned failid käivitusajal teie töökaustas genereerida ja võite neid Gitis ignoreerida.

Ükskõik, millist faili soovite ignoreerida, jälgitakse spetsiaalses failis nimega .gitignore, mida kontrollitakse enamasti teie tööhoidla juurest. GitHubi selleteemalise ametliku dokumentatsiooni kohaselt pole konkreetset gitignore käsku. Selle asemel peate faili, mida soovite ignoreerida, käsitsi redigeerida. .Gitignore-fail sisaldab mustreid, mis on sobitatud teie tööhoidla failinimedega ja neid kasutatakse selleks, et teha kindlaks, kas konkreetset faili tuleks ignoreerida või mitte.



Mis põhjustab .gitignore mittetöötamise?

Funktsioon .gitignore võib küll ideaalselt töötada, kuid te ei pruugi seda korralikult konfigureerida. Kõigis oma uuringutes jõudsime järeldusele, et moodul tõepoolest töötab. Põhjus, miks kooderid ei saa seda funktsiooni kasutada, on enamasti see, et nad pole faili õigesti konfigureerinud või on mõned tingimused, mis ei ole aluseks olevas koodis täidetud.

Siin on mõned lahendused, mis võivad teile sobida. Iga lahendus ei pruugi teie puhul olla kohaldatav, seega veenduge, et lülituksite järgmisele, kui esialgsed tingimused ei ole täidetud.

1. lahendus: .gitignore-faili kontrollimine

Tuli välja huvitav juhtum, kus nägime, et .gitignore-fail loodi vales vormingus. See konkreetne probleem ilmnes siis, kui kasutajad lõid faili Notepadi vaikerakenduse abil Windows OS-is. Selgub, et Notepad kirjutab faili ANSI-vormingu asemel Unicode'is. Selles lahenduses salvestame Notepadi muudatused õiges vormingus .gitignore ja vaatame, kas see probleemi lahendab.

Märge: Märkmiku abil uue faili loomisel peate failist .txt laiendi eemaldama.

  1. Pärast koodi kirjutamist või muudatuste muutmist Notepadis uues tekstidokumendis klõpsake nuppu Fail ja valige Salvesta kui .

Salvesta nimega - märkmik

  1. Nüüd ees Kodeerimine , valige ANSI . Nüüd eemaldage .txt faililaiend ja salvestage fail nimega ‘ .gitignore ’. Valige õige kataloog ja salvestage.

ANSI valimine kodeerimise tüübiks

  1. Nüüd navigeerige kataloogi ja kontrollige, kas õige fail on loodud. Nüüd proovige seda uuesti Gitiga ja vaadake, kas ignoreerimise funktsioon töötab ootuspäraselt.

Arendajad peaksid hoiduma Windowsi vaikemärkmiku kasutamisest. Selle asemel peaksite kasutama korralikku programmeerijate märkmikku. Mõned näited hõlmavad järgmist Märkmik ++ jne. Neis pole teil selliseid probleeme.

Märge: Kui teie fail on juba UNICODE-vormingus salvestatud, peaksite selle sisu ANSI-vormingus korralikult salvestama, kui soovite, et Git teie faili õigesti tuvastaks.

Lahendus 2. Kontrollige faili, mida proovite eirata

Teine tingimus, mille kohaselt .gitignore töötab, on see, et teie fail ei peaks olema osa hoidlast . See on väga oluline aspekt, nagu oleks see tõsi, faili ei ignoreerita nii, nagu see on juba lisatud hoidlasse. Git ei saa seda ignoreerida, isegi kui lisate selle nime või reegli faili .gitignore. Nii et sisuliselt Git ainult eirab jälitamata failid .

Peaksite vaatama oma struktuuri (hoidlat) ja veenduma, et faili, mida proovite praegu eirata, poleks hoidlasse lisatud. Kui see on nii, peate faili hoidlast eemaldama ja pärast viimaste muudatuste tegemist lisage selle nimi .gitignore'i (saate ka faili sisu kopeerida ja pärast selle kustutamist kopeerida teise nimega) .

3. lahendus: failide uuesti hoidlasse lisamine

Kui olete juba lisanud reeglid .gitignore'i, kuid failid, mida soovite eirata, on juba lisatud, saame failid uuesti lisada. Lisamine tähendab, et eemaldame kõik Giti registrist ja lisame siis kõik uuesti oma hoidlasse. Kui lisame faile uuesti nullist, peetakse meeles reegleid, mille olete lisanud .gitignore'i ja lisatakse ainult õiged failid.

Märge: Enne selle lahenduse tegemist peaksite oma koodi varundama ka kusagil mujal. Alati on hea igaks juhuks varukoopia omada.

  1. Käivitage järgmine käsk. See eemaldab etapi ja eemaldab rekursiivsel viisil teie failide teed git-indeksist.
git rm -r - vahemälu.
  1. Pärast selle täitmist peaksite käivitama järgmise käsu. See lisab kõik teie failid tagasi ja kuna .gitignore'il on reeglid, värskendatakse ainult õigeid faile.
git lisada.
  1. Nüüd paneme kõik teie failid tagasi registrisse, kasutades allolevat koodi:
git toime -m '.gitignore töötab nüüd'

Nüüd kontrollige oma faile ja vaadake, kas probleem on lahendatud, ja saate uuesti kasutada .gitignore ilma probleemideta.

4 minutit loetud