Popravek: Gitignore ne deluje



Preizkusite Naš Instrument Za Odpravo Težav

GitHub je postal vodilni pionir na področju sodelovanja s kodami in skupne rabe skladišč. 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 značilnosti in težave. Posebna težava, s katero so se soočali kodirniki, je bila ta, da .gitignore ni deloval v GitHubu. Platforma je ignorirala .gitignore ali pa je delovala delno. Zanimivo je omeniti, da je težava v vsakem primeru lahko nekoliko drugačna, saj gre za povsem drugačen scenarij. Vendar pa bodo rešitve, ki jih bomo navedli, vsebovale popravke, ki bodo delovali splošno.



Kaj je .gitignore?

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

  • Sledi: Te datoteke so v zgodovini že zavezane ali uprizorjene.
  • Brez sledi: To so datoteke, ki še niso bile predvajane ali urejene.
  • Prezrto: To so datoteke, ki jih je uporabnik sam naročil Gitu, naj jih popolnoma prezre.

Te prezrte datoteke se lahko razlikujejo od scenarija do scenarija in so večinoma strojno ustvarjene datoteke ali artefakti gradnje. To je običajna praksa; morda ignorirate različne druge datoteke glede na svoje potrebe. Nekaj ​​primerov teh datotek:

  • Sestavljena koda: Te datoteke so običajno 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 modulov / vozlišče ali / paketi.
  • Konfiguracijske datoteke IDE: To so konfiguracijske datoteke, ki jih večinoma ustvari ali upravlja vaša programska oprema IDE.
  • Datoteke, ustvarjene med izvajanjem: Obstaja nekaj programov, ki ustvarijo datoteke med izvajanjem. Če se katera koli taka koda zažene, bodo nekatere datoteke morda ustvarjene med izvajanjem v vaši delovni mapi in jih boste morda prezrli v Gitu.

Kateri koli datoteki, ki jo želite prezreti, sledite v posebni datoteki, imenovani .gitignore, ki je večinoma preverjena v korenu vašega delujočega skladišča. Glede na uradno dokumentacijo GitHub-a na to temo 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 delujočem repozitoriju in se uporabljajo za ugotavljanje, ali je treba določeno datoteko prezreti ali ne.



Kaj povzroča, da .gitignore ne deluje?

Funkcija .gitignore morda deluje popolnoma, vendar je morda niste pravilno konfigurirali. V vseh naših raziskavah smo ugotovili, da modul resnično deluje. Razlog, zakaj kodirniki ne morejo uporabljati funkcije, je predvsem v tem, da datoteke niso pravilno konfigurirali ali pa nekateri pogoji v osnovni kodi niso izpolnjeni.

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

1. rešitev: Preverjanje datoteke .gitignore

Izšel je zanimiv primer, ko smo videli, da je bila datoteka .gitignore ustvarjena v napačni obliki. Do te težave je prišlo, ko so uporabniki datoteko ustvarili z uporabo privzete aplikacije Notepad v operacijskem sistemu Windows. Izkazalo se je, da Notepad namesto v formatu ANSI datoteko zapiše v Unicode. V tej rešitvi bomo spremembe Beležnice shranili v pravilno obliko .gitignore in preverili, ali to odpravlja težavo.

Opomba: Ko ustvarite novo datoteko z Beležnico, morate iz datoteke odstraniti končnico datoteke .txt.

  1. Po pisanju kode ali sprememb v novem besedilnem dokumentu v Beležnico kliknite mapa in izberite Shrani kot .

Shrani kot - Beležnica

  1. Zdaj pred Kodiranje , izberite ANSI . Zdaj odstranite pripono datoteke .txt in datoteko shranite z imenom .gitignore ’. Izberite pravi imenik in shranite.

Izbira ANSI kot vrste kodiranja

  1. Zdaj se pomaknite do imenika in preverite, ali je ustvarjena pravilna datoteka. Zdaj ga znova preizkusite z Gitom in preverite, ali funkcija Ignore deluje po pričakovanjih.

Razvijalci se morajo vzdržati uporabe privzete beležnice v sistemu Windows. Namesto tega raje uporabite ustrezen beležnik 'programerji'. Nekateri primeri vključujejo Beležnica ++ itd. V teh ne boste imeli takšnih težav.

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

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

Drugi pogoj, pod katerim deluje .gitignore, je, da vaša datoteka ne sme biti del repozitorija . To je zelo pomemben vidik, saj če je to res, datoteka ne bo prezrta, kot je že dodano v odlagališče. Git tega ne more prezreti, tudi če njegovo ime ali pravilo vstavite v datoteko .gitignore. V bistvu torej Git samo ignorira datoteke, ki jim ni bilo mogoče slediti .

Oglejte si svojo strukturo (repozitorij) in se prepričajte, da datoteka, ki jo trenutno poskušate prezreti, ni dodana v repozitorij. Če je, bi morali datoteko odstraniti iz repozitorija in po opravljenih najnovejših spremembah dodati njeno ime v .gitignore (lahko tudi kopirate vsebino datoteke in jo po izbrisu ponovite z drugim imenom) .

3. rešitev: Ponovno dodajanje datotek v skladišče

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

Opomba: Pred izvajanjem te rešitve bi morali tudi varnostno kopirati kodo drugje. Vedno je dobro imeti varnostno kopijo za vsak slučaj.

  1. Izvedite naslednji ukaz. To bo odstranilo in na rekurziven način odstranilo poti do vaših datotek iz git indeksa.
git rm -r --cached.
  1. Ko se to izvede, morate izvesti 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 vaše datoteke vrnili v indeks s spodnjo kodo:
git commit -m '.gitignore zdaj deluje'

Zdaj preglejte datoteke in preverite, ali je težava odpravljena, in lahko znova uporabite .gitignore brez kakršnih koli težav.

4 minute branja