Popravi: Gitignore ne deluje

GitHub se je izkazal kot vodilni pionir na področju sodelovanja s kodo in skupne rabe repozitorij. GitHub je predvsem programska oprema za nadzor različic, ki uporabnikom omogoča nadzor nad porazdeljenim nadzorom različic in SCM (upravljanje izvorne kode). To platformo uporabljajo velika podjetja in podjetja po vsem svetu.

.gitignore

Takšne platforme imajo svoje tehnične lastnosti in težave. Posebna težava, ki so jo imeli koderji, je bila, da .gitignore v GitHubu ne deluje. Platforma je bodisi ignorirala .gitignore ali deloma delovala. Zanimivo je, da je težava v vsakem primeru nekoliko drugačna, saj je vsak primer popolnoma drugačen. Vendar rešitve, ki jih navajamo, vsebujejo popravke, ki bodo delovali univerzalno.

Kaj je .gitignore?

Git (ali GitHub) vidi vse datoteke v vašem delovnem imeniku. Vsako datoteko označi kot eno od treh:

  • Sledeno: Te datoteke so v zgodovini predhodno posnete ali pa so bile postopno urejene.
  • Brez nadzora: To so datoteke, ki niso bile predhodno narejene ali storjene.
  • Ignored: To so datoteke, za katere je uporabnik sam povedal, da jih Git popolnoma ignorira.

Te prezrte datoteke se lahko razlikujejo glede na scenarij in so večinoma strojno ustvarjene datoteke ali zgradba artefaktov. To je običajna praksa; boste morda ignorirali različne druge datoteke v skladu s svojimi potrebami. Nekaj ​​primerov teh datotek je:

  • Sestavljena koda: Te datoteke so ponavadi s pripono .class, .pyc, .ccp itd.
  • Skrite sistemske datoteke: To so datoteke, ki jih sistem uporablja za svoje delovanje, vendar so skrite pred navadnim pogledom, na primer DS_Store ali Thumbs.db itd.
  • Izdelajte izhodne imenike: To so večinoma imeniki / bin, / out itd.
  • Predpomnilniki odvisnosti: Te datoteke so lahko vsebina / vozlišč ali / paketov modulov.
  • Konfiguracijske datoteke IDE: To so konfiguracijske datoteke, ki jih večinoma ustvari ali upravlja vaša programska oprema IDE.
  • Datoteke, ustvarjene med izvajanjem: Obstajajo nekateri programi, ki ustvarijo datoteke v času izvajanja. Če se zažene katera koli takšna koda, se lahko nekatere datoteke ustvarijo med delom v delovni mapi in jih v Git-u lahko prezrete.

Ne glede na datoteko, ki jo želite prezreti, sledimo v posebni datoteki z imenom .gitignore, ki je večinoma preverjena v korenu vašega delovnega skladišča. Glede na uradno dokumentacijo GitHub-a o tej temi ni posebnega ukaza gitignore. Namesto tega morate ročno urediti datoteko, ki jo želite prezreti. Datoteka .gitignore vsebuje vzorce, ki se ujemajo z imeni datotek v vašem delovnem skladišču in se uporabljajo za določitev, ali je treba določeno datoteko prezreti ali ne.

Kaj povzroča .gitignore ne deluje?

Funkcija .gitignore morda deluje odlično, vendar je morda niste pravilno konfigurirali. V vseh naših raziskavah smo prišli do zaključka, da modul res deluje. Razlog, zakaj koderji ne morejo uporabljati te funkcije, je večinoma v tem, da datoteke niso pravilno konfigurirali ali pa obstajajo nekateri pogoji, ki jih osnovna koda ne izpolnjuje.

Tu je nekaj rešitev, ki bi vam lahko pomagale. Vsaka rešitev v vašem primeru morda ne bo uporabna, zato se prepričajte, da preklopite na naslednjo, če začetni pogoji niso izpolnjeni.

1. rešitev: Preverjanje datoteke .gitignore

Zanimiv je bil primer, ko smo videli, da je datoteka .gitignore ustvarjena v napačni obliki. Do te težave je prišlo, ko so uporabniki ustvarili datoteko s privzeto aplikacijo Notepad v operacijskem sistemu Windows. Izkaže se, da Notepad zapiše datoteko v Unicode namesto v ANSI format. V tej rešitvi bomo shranili spremembe Beležnice v pravilni obliki .gitignore in videli, ali to odpravlja težavo.

Opomba: Ko ustvarite novo datoteko s pomočjo Beležnice, morate odstraniti končnico .txt iz datoteke.

  1. Ko napišete kodo ali spremenite nov besedilni dokument v Notepad, kliknite File in izberite Save As .

Shrani kot - Beležnica
  1. Zdaj pred kodiranjem izberite ANSI . Zdaj odstranite pripono datoteke .txt in jo shranite z imenom ' .gitignore '. Izberite pravi imenik in ga shranite.

Izbira ANSI za vrsto kodiranja
  1. Zdaj se pomaknite do imenika in preverite, ali je ustvarjena pravilna datoteka. Zdaj preizkusite še enkrat z Gitom in preverite, ali funkcija Ignore deluje, kot je bilo pričakovano.

Razvijalci bi se morali vzdržati uporabe privzetega zvezka v operacijskem sistemu Windows. Namesto tega uporabite ustrezne beležnice 'programerjev'. Nekateri primeri vključujejo Notepad ++ itd. Pri teh ne boste imeli težav.

Opomba: Če je vaša datoteka že shranjena v obliki UNICODE, morate pravilno shraniti vsebino v obliki ANSI, če želite, da datoteko Git pravilno zazna.

2. rešitev: Preverjanje datoteke, ki jo želite prezreti

Drug pogoj, na katerem deluje .gitignore, je, da vaša datoteka še ne bi bila del shrambe . To je zelo pomemben vidik, saj če je to res, datoteka ne bo prezrta, saj je že dodana v skladišče. Git tega ne more prezreti, tudi če v ime .gitignore vstavite njegovo ime ali pravilo. Torej Git v bistvu ignorira samo neodprte datoteke .

Oglejte si svojo strukturo (skladišče) in se prepričajte, da datoteka, ki jo trenutno poskušate prezreti, ni dodana v skladišče. Če je, bi morali datoteko odstraniti iz skladišča in po tem, ko so storjene najnovejše spremembe, njeno ime dodajte v .gitignore (vsebino datoteke lahko kopirate tudi po brisanju in jo ponovite z drugim imenom) .

3. rešitev: Ponovno dodajanje datotek v shrambo

Če ste pravila že dodali v .gitignore, vendar so datoteke, ki jih želite prezreti, že dodane, lahko datoteke ponovno dodamo. Če dodate, pomeni, da bomo vse odstranili iz Gitovega indeksa in nato spet dodali vse v vaše skladišče. Ko ponovno dodamo datoteke iz nič, bodo upoštevana pravila, ki ste jih dodali v .gitignore in dodane bodo le pravilne datoteke.

Opomba: Preden začnete s to rešitvijo, morate varnostno kopirati kodo nekje drugje. Vedno je dobro imeti varnostno kopijo za vsak primer.

  1. Izvedite naslednji ukaz. To bo nestabilno in rekurzivno odstranilo poti do datotek iz git indeksa.
 git rm -r - predpomnjeno. 
  1. Ko je to izvedeno, morate izvršiti naslednji ukaz. To bo dodalo vse vaše datoteke nazaj, in ker bo .gitignore imel pravila, bodo posodobljene samo pravilne datoteke.
 git add. 
  1. Zdaj bomo vse datoteke zavezali nazaj v indeks s pomočjo spodnje kode:
 git commit -m ".gitignore zdaj deluje" 

Zdaj preglejte datoteke in preverite, ali je težava rešena in lahko znova uporabite .gitignore brez težav.

Zanimivi Članki