Rettelse: Gitignore fungerer ikke

GitHub har vist sig at være en førende pioner inden for kodesamarbejde og deling af opbevaringssteder. GitHub er primært en versionskontrolsoftware, der tillader brugere kontrol med distribueret versionskontrol og SCM (kildekodestyring). Denne platform bruges af større virksomheder og virksomheder over hele verden.

Gitignore

Platformer som disse har deres tekniske forhold og problemer. Et specifikt problem, som koderne oplevede, var, at .gitignore ikke virkede i GitHub. Platformen ignorerede enten .gitignore eller arbejdede delvist. Det er interessant at bemærke, at problemet kan være lidt anderledes i hvert tilfælde, da hvert tilfælde er et helt andet scenarie. Imidlertid vil de løsninger, som vi angiver, indeholde rettelser, der fungerer universelt.

Hvad er .gitignore?

Git (eller GitHub) ser alle filer i dit arbejdsmappe. Det karakteriserer hver fil som en af ​​de tre:

  • Sporet: Disse filer er enten begået eller iscenesat tidligere i historien.
  • Ikke sporet: Dette er de filer, der ikke tidligere er iscenesat eller begået.
  • Ignoreret: Dette er de filer, som brugeren selv fortalte Git om at ignorere fuldstændigt.

Disse ignorerede filer kan variere scenario til scenarie og er for det meste maskingenererede filer eller bygge artefakter. Dette er den almindelige praksis; du ignorerer muligvis forskellige andre filer i henhold til dine egne behov. Nogle eksempler på disse filer er:

  • Kompileret kode: Disse filer er normalt med udvidelsen .class, .pyc, .ccp osv.
  • Skjulte systemfiler: Dette er filer, der bruges af systemet til dets operationer, men som er skjult fra almindelig visning, f.eks. DS_Store eller Thumbs.db osv.
  • Byg output-kataloger: Disse er for det meste af katalogerne til / bin, / out osv.
  • Afhængighedscacher: Disse filer kan være indholdet i / node eller / pakke moduler.
  • IDE-konfigurationsfiler: Dette er konfigurationsfiler, der for det meste oprettes eller administreres af din IDE-software.
  • Filer genereret ved kørsel: Der er nogle programmer, der opretter filer på kørselstidspunktet. Hvis en sådan kode køres, genereres nogle filer muligvis på kørsel i din arbejdsmappe, og du kan ignorere dem i Git.

Uanset hvilken fil du vil ignorere spores i en speciel fil kaldet .gitignore, som for det meste kontrolleres i roden til dit arbejdslager. I henhold til den officielle dokumentation af GitHub om emnet er der ingen specifik gitignore-kommando. I stedet skal du manuelt redigere den fil, du vil ignorere. .Gitignore-filen indeholder mønstre, der matches med filnavne i dit arbejdslager, og disse bruges til at hjælpe med at bestemme, om en bestemt fil skal ignoreres eller ej.

Hvad får .gitignore til ikke at arbejde?

Funktionen .gitignore fungerer muligvis perfekt, men du har muligvis ikke konfigureret den ordentligt. I alle vores undersøgelser kom vi til den konklusion, at modulet faktisk fungerede. Årsagen til, at kodere ikke er i stand til at bruge funktionen, er mest, fordi de ikke har konfigureret filen korrekt, eller at der er nogle betingelser, der ikke er opfyldt i den underliggende kode.

Her er nogle løsninger, der muligvis fungerer for dig. Hver løsning kan muligvis ikke anvendes i dit tilfælde, så sørg for at skifte til den næste, hvis de oprindelige betingelser ikke er opfyldt.

Løsning 1: Kontrol af .gitignore-fil

En interessant sag kom frem, hvor vi så, at .gitignore-filen blev oprettet i det forkerte format. Dette særlige problem opstod, da brugere oprettede filen ved hjælp af standardapplikationen til Notepad i Windows OS. Det viser sig, at Notepad skriver filen i Unicode i stedet for ANSI-format. I denne løsning gemmer vi ændringerne af Notepad i det rigtige format af .gitignore og ser, om dette løser problemet.

Bemærk: Du skal fjerne udvidelsen af ​​.txt fra filen, når du opretter en ny fil ved hjælp af Notepad.

  1. Efter at du har skrevet koden eller ændringerne i et nyt tekstdokument i Notepad, skal du klikke på Fil og vælge Gem som .

Gem som - Notepad
  1. Nu skal du vælge ANSI foran kodning . Fjern nu filtypenavnet af .txt, og gem filen med navnet ' .gitignore '. Vælg det rigtige bibliotek, og gem.

Valg af ANSI som kodningstype
  1. Naviger nu til biblioteket, og kontroller, om den rigtige fil er oprettet. Test det igen med Git og se, om funktionen Ignorer fungerer som forventet.

Udviklere bør undlade at bruge standardnotepadet i Windows. I stedet skal du bruge de rette 'programmører' notesblok. Nogle eksempler inkluderer Notepad ++ osv. I disse har du ikke problemer som disse.

Bemærk: Hvis din fil allerede er gemt i UNICODE-format, skal du gemme indholdet i ANSI-format korrekt, hvis du vil, at din fil skal opdages korrekt af Git.

Løsning 2: Kontroller den fil, du prøver at ignorere

En anden betingelse, som .gitignore fungerer på, er, at din fil ikke skal være en del af depotet endnu . Dette er et meget væsentligt aspekt, som om dette er sandt, filen ignoreres ikke, da den allerede er føjet til depotet. Det kan Git ikke ignorere, selvom du placerer dets navn eller regel i filen .gitignore. Så i det væsentlige ignorerer Git kun ikke- sporede filer .

Du skal se på din struktur (depot) og sørge for, at den fil, som du i øjeblikket prøver at ignorere, ikke føjes til depotet. Hvis det er tilfældet, bliver du nødt til at fjerne filen fra depotet, og efter at de seneste ændringer er begået, skal du tilføje dens navn til .gitignore (du kan også kopiere indholdet af filen og efter at have slettet den, gentage den med et andet navn) .

Løsning 3: Genføjelse af filer til depot igen

Hvis du allerede har tilføjet regler til .gitignore, men de filer, du vil ignorere, allerede er tilføjet, kan vi tilføje filerne igen. Tilføjelse betyder, at vi fjerner alt fra Git's indeks og derefter tilføjer alt tilbage til dit arkiv igen. Når vi tilføjer filer igen fra bunden, vil reglerne blive husket, som du har tilføjet i .gitignore, og kun de korrekte filer tilføjes.

Bemærk: Du bør også tage sikkerhedskopi af din kode et andet sted, før du udfører denne løsning. Det er altid godt at have en sikkerhedskopi, hvis det er tilfældet.

  1. Udfør følgende kommando. Dette vil afvise og fjerne stierne til dine filer fra git-indekset på en rekursiv måde.
 git rm -r - cachelagret. 
  1. Når dette er udført, skal du udføre følgende kommando. Dette tilføjer alle dine filer tilbage, og da .gitignore har reglerne, opdateres kun de korrekte filer.
 git tilføje. 
  1. Nu overfører vi alle dine filer tilbage til indekset ved hjælp af koden herunder:
 git commit -m ".gitignore fungerer nu" 

Kontroller nu dine filer, og se, om problemet er løst, og du kan bruge .gitignore igen uden problemer.

Interessante Artikler