Fix: Gitignore nu funcționează

GitHub s-a dovedit a fi un pionier de lider în domeniul colaborării codurilor și al partajării depozitelor. GitHub este în principal un software de control al versiunilor care permite utilizatorilor să controleze controlul distribuit de versiuni și SCM (gestionarea codului sursă). Această platformă este folosită de companii și companii majore din întreaga lume.

.gitignore

Platforme ca acestea au tehnicile și problemele lor. O problemă specifică pe care au avut-o codificatorii a fost că .gitignore nu funcționa în GitHub. Platforma fie a ignorat .gitignore, fie a funcționat parțial. Este interesant de menționat că problema poate fi puțin diferită în fiecare caz, deoarece fiecare caz este un scenariu complet diferit. Cu toate acestea, soluțiile pe care le enumerăm vor conține corecții care vor funcționa universal.

Ce este .gitignore?

Git (sau GitHub) vede fiecare fișier din directorul de lucru. Caracterizează fiecare fișier ca unul dintre cele trei:

  • Urmărit: Aceste fișiere sunt fie angajate, fie etapizate anterior în istorie.
  • Netracked: Acestea sunt fișierele care nu au fost înregistrate anterior sau angajate.
  • Ignorate: Acestea sunt fișierele pe care utilizatorul însuși i-a spus lui Git să le ignore complet.

Aceste fișiere ignorate pot varia scenariu în scenariu și sunt în mare parte fișiere generate de mașini sau construiește artefacte. Aceasta este practica comună; s-ar putea să ignorați alte alte fișiere în funcție de nevoile dvs. Câteva exemple ale acestor fișiere sunt:

  • Cod compilat: Aceste fișiere sunt de obicei cu extensia .class, .pyc, .ccp etc.
  • Fișiere de sistem ascunse: Sunt fișiere care sunt utilizate de sistem pentru operațiunile sale, dar sunt ascunse de vizualizarea simplă, de exemplu, DS_Store sau Thumbs.db etc.
  • Construiți directoare de ieșire: Acestea sunt în mare parte din directoarele / bin, / out etc.
  • Cache-uri de dependență: Aceste fișiere pot fi conținutul / nodurilor sau / modulelor de pachete.
  • Fișiere de configurare IDE: sunt fișiere de configurare care sunt create în cea mai mare parte sau gestionate de software-ul dvs. IDE.
  • Fișiere generate la rulare: Există unele programe care creează fișiere în timpul rulării. Dacă este executat fie un astfel de cod, unele fișiere pot fi generate în timpul rulării în folderul de lucru și le puteți ignora în Git.

Orice fișier pe care doriți să îl ignorați este urmărit într-un fișier special numit .gitignore, care este verificat în cea mai mare parte din rădăcina depozitului dvs. de lucru. Conform documentației oficiale a GitHub pe această temă, nu există o comandă specifică gitignore. În schimb, trebuie să editați manual fișierul pe care doriți să-l ignorați. Fișierul .gitignore conține tipare care sunt potrivite cu numele fișierelor din depozitul dvs. de lucru și acestea sunt utilizate pentru a ajuta la determinarea dacă un fișier specific trebuie ignorat sau nu.

Care sunt cauzele .gitignore să nu funcționeze?

Funcția .gitignore poate funcționa perfect, dar este posibil să nu fi configurat-o corect. În toate sondajele noastre, am ajuns la concluzia că modulul funcționează într-adevăr. Motivul pentru care codificatorii nu pot utiliza funcția este cel mai ales pentru că nu au configurat corect fișierul sau există anumite condiții care nu sunt îndeplinite în codul de bază.

Iată câteva soluții care ar putea funcționa pentru tine. Fiecare soluție ar putea să nu fie aplicabilă în cazul dvs., așa că asigurați-vă că treceți la următoarea dacă nu sunt îndeplinite condițiile inițiale.

Soluția 1: Verificarea fișierului .gitignore

A apărut un caz interesant în care am văzut că fișierul .gitignore a fost creat într-un format greșit. Această problemă specială a apărut atunci când utilizatorii au creat fișierul folosind aplicația implicită a Notepad în sistemul de operare Windows. Se pare că Notepad scrie fișierul în Unicode în loc de formatul ANSI. În această soluție, vom salva modificările Notepad în formatul corect al .gitignore și vom vedea dacă aceasta rezolvă problema.

Notă: Trebuie să eliminați extensia .txt din fișier atunci când creați un nou fișier folosind Notepad.

  1. După scrierea codului sau modificările unui document text nou în Notepad, faceți clic pe File și selectați Save As .

Salvați ca - Notepad
  1. Acum, în fața codificării, selectați ANSI . Acum eliminați extensia fișierului .txt și salvați fișierul cu numele ' .gitignore '. Selectați directorul corect și salvați.

Selectarea ANSI ca tip de codificare
  1. Acum navigați în director și verificați dacă este creat fișierul corect. Acum testează-l din nou cu Git și vezi dacă funcția Ignore funcționează așa cum era de așteptat.

Dezvoltatorii ar trebui să se abțină de la utilizarea Notepad-ului implicit în Windows. În schimb, ar trebui să folosiți un bloc de note „programatori” adecvat. Unele exemple includ Notepad ++ etc. În acestea, nu veți avea probleme ca acestea.

Notă: Dacă fișierul dvs. este deja salvat în format UNICODE, ar trebui să salvați conținutul în format ANSI corect dacă doriți ca fișierul dvs. să fie detectat corect de Git.

Soluția 2: Verificați fișierul pe care încercați să îl ignorați

O altă condiție în care funcționează .gitignore este ca fișierul dvs. să nu facă încă parte din depozit . Acesta este un aspect esențial, deoarece acest lucru este adevărat, fișierul nu va fi ignorat, deoarece este deja adăugat în depozit. Git nu poate ignora asta chiar dacă așezați numele sau regula în fișierul .gitignore. Așadar, în esență, Git ignoră doar fișierele netratate .

Ar trebui să vă uitați la structura dvs. (depozit) și să vă asigurați că fișierul pe care încercați să îl ignorați în prezent nu este adăugat la depozit. Dacă este, ar trebui să eliminați fișierul din depozit și după ce s-au comis cele mai recente modificări, adăugați numele acestuia în .gitignore (puteți, de asemenea, să copiați conținutul fișierului și, după ștergerea acestuia, să-l reproduceți cu un alt nume) .

Soluția 3: Adăugarea din nou a fișierelor în depozit

Dacă ați adăugat deja reguli în .gitignore, dar fișierele pe care doriți să le ignorați sunt deja adăugate, putem adăuga din nou fișierele. Adăugarea înseamnă că vom elimina totul din indexul Git și apoi vom adăuga totul din nou în depozit. Când adăugăm din nou fișierele de la zero, se vor ține cont de regulile pe care le-ați adăugat în .gitignore și se vor adăuga doar fișierele corecte.

Notă: Ar trebui să faceți o copie de siguranță a codului în altă parte înainte de a efectua această soluție. Este întotdeauna bine să aveți o copie de rezervă doar în caz.

  1. Executați următoarea comandă. Acest lucru va dezactiva și va elimina căile către fișierele dvs. din indexul git într-o manieră recursivă.
 git rm -r - cached. 
  1. După executarea acestui lucru, ar trebui să executați următoarea comandă. Acest lucru va adăuga toate fișierele dvs. înapoi și deoarece .gitignore va avea regulile, doar fișierele corecte vor fi actualizate.
 adauga git. 
  1. Acum vom transfera toate fișierele dvs. în index folosind codul de mai jos:
 git commit -m ".gitignore funcționează acum" 

Acum inspectați fișierele și vedeți dacă problema este rezolvată și puteți utiliza .gitignore din nou, fără probleme.

Articole Interesante