Oprava: Gitignore nefunguje

GitHub se ukázal být předním průkopníkem v oblasti spolupráce s kódem a sdílení repozitářů. GitHub je především software pro správu verzí, který uživatelům umožňuje kontrolu distribuované správy verzí a SCM (správa zdrojového kódu). Tuto platformu používají významné firmy a společnosti po celém světě.

.gignignore

Platformy, jako jsou tyto, mají své technické aspekty a problémy. Jedním konkrétním problémem, který kodátoři zažili, bylo to, že .gitignore v GitHubu nefungoval. Platforma buď ignorovala .gitignore, nebo fungovala částečně. Je zajímavé poznamenat, že problém se může v každém případě trochu lišit, protože každý případ je úplně jiný scénář. Řešení, která uvádíme, však budou obsahovat opravy, které budou fungovat všeobecně.

Co je to .gitignore?

Git (nebo GitHub) vidí každý soubor ve vašem pracovním adresáři. Charakterizuje každý soubor jako jeden ze tří:

  • Sledované: Tyto soubory jsou buď potvrzeny, nebo představeny dříve v historii.
  • Untracked: Jedná se o soubory, které dosud nebyly inscenovány nebo potvrzeny .
  • Ignorováno: Toto jsou soubory, které uživatel sám řekl Gitu, aby úplně ignoroval.

Tyto ignorované soubory se mohou lišit podle scénáře a jsou většinou soubory generované strojem nebo vytvářejí artefakty. Toto je běžná praxe; můžete ignorovat různé jiné soubory podle svých vlastních potřeb. Příklady těchto souborů jsou:

  • Kompilovaný kód: Tyto soubory mají obvykle příponu .class, .pyc, .ccp atd.
  • Skryté systémové soubory: Jedná se o soubory, které systém používá pro své operace, ale jsou skryté před prostým zobrazením, například DS_Store nebo Thumbs.db atd.
  • Sestavení výstupních adresářů: Většinou jde o adresáře / bin, / out atd.
  • Závislé mezipaměti: Tyto soubory mohou být obsahem modulů / node nebo / packages.
  • Konfigurační soubory IDE: Jedná se o konfigurační soubory, které většinou vytváří nebo spravuje váš software IDE.
  • Soubory generované za běhu: Existují některé programy, které vytvářejí soubory za běhu. Pokud je některý z těchto kódů spuštěn, mohou být některé soubory vygenerovány za běhu ve vaší pracovní složce a v Gitu je můžete ignorovat.

Kterýkoli soubor, který chcete ignorovat, je sledován ve speciálním souboru s názvem .gitignore, který je většinou kontrolován v kořenovém adresáři vašeho pracovního úložiště. Podle oficiální dokumentace GitHub k tomuto tématu neexistuje žádný konkrétní příkaz gitignore. Místo toho musíte ručně upravit soubor, který chcete ignorovat. Soubor .gitignore obsahuje vzory, které jsou porovnávány s názvy souborů ve vašem pracovním úložišti, a ty se používají k určení, zda by měl být konkrétní soubor ignorován nebo ne.

Co způsobuje .gitignore nefunguje?

Funkce .gitignore může fungovat perfektně, ale možná jste ji nenakonfigurovali správně. Ve všech našich průzkumech jsme dospěli k závěru, že modul skutečně funguje. Důvody, proč kodéry nejsou schopny tuto funkci použít, jsou většinou proto, že soubor nenakonfigurovaly správně, nebo jsou v základním kódu splněny některé podmínky.

Zde je několik řešení, která by pro vás mohla fungovat. Každé řešení nemusí být ve vašem případě použitelné, takže pokud nejsou splněny počáteční podmínky, přepněte se na další.

Řešení 1: Kontrola souboru .gitignore

Objevil se zajímavý případ, kdy jsme zjistili, že soubor .gitignore byl vytvořen ve špatném formátu. K tomuto konkrétnímu problému došlo, když uživatelé vytvořili soubor pomocí výchozí aplikace programu Poznámkový blok v systému Windows. Ukázalo se, že program Poznámkový blok zapisuje soubor ve formátu Unicode namísto formátu ANSI. V tomto řešení uložíme změny programu Poznámkový blok ve správném formátu .gitignore a uvidíme, zda se tím problém vyřeší.

Poznámka: Při vytváření nového souboru pomocí programu Poznámkový blok musíte ze souboru odebrat příponu .txt.

  1. Po zapsání kódu nebo změn v novém textovém dokumentu v programu Poznámkový blok klikněte na Soubor a vyberte Uložit jako .

Uložit jako - Poznámkový blok
  1. Nyní před kódováním vyberte ANSI . Nyní odeberte příponu souboru .txt a uložte soubor s názvem ' .gitignore '. Vyberte správný adresář a uložte jej.

Výběr typu ANSI jako typu kódování
  1. Nyní přejděte do adresáře a zkontrolujte, zda je vytvořen správný soubor. Nyní to znovu otestujte pomocí Gitu a zjistěte, zda funkce Ignore funguje podle očekávání.

Vývojáři by se měli zdržet používání výchozího Poznámkového bloku v systému Windows. Místo toho byste měli použít správný programátorský programátor. Některé příklady zahrnují Poznámkový blok ++ atd. V nich nebudete mít podobné problémy.

Poznámka: Pokud je váš soubor již uložen ve formátu UNICODE, měli byste obsah správně uložit ve formátu ANSI, pokud chcete, aby byl soubor Git správně detekován.

Řešení 2: Kontrola souboru, který se pokoušíte ignorovat

Další podmínkou, na které pracuje .gitignore, je, že váš soubor by ještě neměl být součástí úložiště . Toto je velmi zásadní aspekt, jako by to byl pravda, soubor nebude ignorován, protože je již přidán do úložiště. Git to nemůže ignorovat, i když do souboru .gitignore umístíte jeho název nebo pravidlo. Git tak v podstatě ignoruje pouze nevysledované soubory .

Měli byste se podívat na svou strukturu (úložiště) a ujistit se, že soubor, který se nyní pokoušíte ignorovat, nebude přidán do úložiště. Pokud ano, budete muset soubor z úložiště odebrat a po potvrzení posledních změn přidejte jeho název do .gitignore (můžete také zkopírovat obsah souboru a po jeho smazání zkopírovat jiný název) .

Řešení 3: Opětovné přidání souborů do úložiště

Pokud jste do .gitignore již přidali pravidla, ale soubory, které chcete ignorovat, jsou již přidány, můžeme je znovu přidat. Přidání znamená, že odstraníme vše z Gitova indexu a poté vše znovu přidáme do vašeho úložiště. Když znovu přidáváme soubory od nuly, budou mít na paměti pravidla, která jste přidali do .gitignore a přidali se pouze správné soubory.

Poznámka: Před provedením tohoto řešení byste měli svůj kód zálohovat i jinde. Vždy je dobré mít zálohu pro případ.

  1. Proveďte následující příkaz. Tím se rekurzivním způsobem zruší a odstraní cesty k souborům z indexu git.
 git rm -r - cached. 
  1. Po provedení této akce byste měli provést následující příkaz. To přidá všechny vaše soubory zpět a protože .gitignore bude mít pravidla, budou aktualizovány pouze správné soubory.
 git add. 
  1. Nyní převedeme všechny vaše soubory zpět do indexu pomocí níže uvedeného kódu:
 git commit -m ".gitignore nyní pracuje" 

Nyní prohlédněte své soubory a podívejte se, zda je problém vyřešen a můžete použít .gitignore znovu bez jakýchkoli problémů.

Zajímavé Články