Niet elk bestand in uw project moet versiebeheerd zijn. Zoek uit welke typen bestanden u moet uitsluiten van uw bronrepository.

Versiebeheer is een essentieel hulpmiddel voor het bijhouden van wijzigingen in uw codebase, maar u wilt niet altijd elk bestand bijhouden.

Om rommel te voorkomen en het risico op het verspreiden van gevoelige informatie te verminderen, kunt u een bestand met de naam .gitignore gebruiken. Dit bestand specificeert welke bestanden en mappen Git niet mag indexeren.

Bepalen welke bestanden in .gitignore moeten worden opgenomen, kan een uitdaging zijn, vooral als ontwikkeling nieuw voor je is. Ontdek welke bestanden je aan je .gitignore moet toevoegen voor een vlottere Git-workflow.

Een .gitignore-bestand maken

Om je .gitignore bestand enig effect te laten hebben, moet je Git geïnitialiseerd hebben in je project.

Je kunt Git initialiseren door het onderstaande commando in je terminal uit te voeren:

git begin

Deze opdracht creëert een nieuwe Git-repository voor je project, in een verborgen ".git"-submap die alle bestanden en mappen bevat die nodig zijn voor versiebeheer van je project.

instagram viewer

Om deze opdracht uit te voeren, moet u hebben Git geïnstalleerd in uw systeem.

Maak vervolgens uw .gitignore-bestand door de onderstaande opdracht uit te voeren:

aanraken.gitignore

Door de bovenstaande opdracht uit te voeren, wordt een nieuw bestand gemaakt, ".gitignore" in uw huidige map. Je kunt een bestand uitsluiten van Git door de bestandsnaam of het bestandspad toe te voegen (als het bestand zich in een andere map bevindt dan de .gitignore bestand).

Git hoeft niet elk bestand in je project te volgen, en het volgen van sommige bestanden kan tot onvoorziene problemen leiden. Dit zijn enkele van de bestanden die u aan uw .gitignore moet toevoegen.

1. Configuratiebestanden

Configuratiebestanden slaan instellingen en andere parameters op die uw toepassingen gebruiken om hun gedrag te definiëren en aan te passen. In deze bestanden worden vaak databaseverbindingsreeksen, API-sleutels en andere gevoelige informatie opgeslagen die u niet in uw Git-repository mag vrijgeven.

Als u configuratiebestanden in uw repository opneemt, kan iedereen die er toegang toe heeft de inhoud ervan bekijken. Dat kan gevoelige informatie zijn, die kan leiden tot beveiligingsinbreuken en andere problemen.

Om configuratiebestanden uit te sluiten van uw Git-repository, voegt u specifieke bestandsnamen of mapnamen toe aan uw .gitignore bestand.

U kunt bijvoorbeeld onderstaande regel toevoegen aan uw .gitignore bestand om een ​​te negeren .env bestand.

.env

2. Bouw artefacten

Build-artefacten zijn de gecompileerde of gegenereerde bestanden die worden geproduceerd wanneer u uw project bouwt. Deze bestanden bevinden zich meestal in een "doel" of "bouwen" map.

Bouwartefacten kunnen gecompileerde Java-klassen, JAR-bestanden, WAR-bestanden, binaire bestanden, distributiepakketten, rapporten, logbestanden en andere zijn die tijdens het bouwproces zijn gegenereerd.

Het is over het algemeen een goede gewoonte om build-artefacten uit je Git-repository uit te sluiten, omdat ze erg groot kunnen zijn. Ze kunnen ook minder draagbaar zijn dan uw bronbestanden, alleen relevant voor een specifieke omgeving. Als u ze in uw repository opneemt, kan de grootte van uw repository groter worden en wordt het langzamer om te klonen en ermee te werken.

Om build-artefacten uit te sluiten van uw Git-repository, voegt u de "doel/" of "bouwen/" map naar uw .gitignore bestand.

Bijvoorbeeld:

# .gitignore

doel/
bouwen/

3. Geïntegreerde ontwikkelomgevingsbestanden

Integrated Development Environment (IDE)-bestanden zijn configuratiebestanden, metagegevens van projecten en andere bestanden die door uw IDE worden gegenereerd wanneer u een project maakt of opent. Deze bestanden zijn specifiek voor elke IDE. Uw IDE gebruikt deze bestanden om de projectinstellingen te configureren.

Deze bestanden zijn niet nodig voor het bouwen of uitvoeren van uw applicatie en kunnen vaak problemen veroorzaken als ze worden vastgelegd in een gedeelde Git-repository. Verschillende mensen in uw team kunnen bijvoorbeeld verschillende IDE's of versies gebruiken, en het vastleggen van IDE-specifieke bestanden kan samenvoegconflicten veroorzaken en het moeilijk maken om aan het project samen te werken.

Aangezien deze bestanden IDE-specifiek zijn, zijn de bestanden die u wilt opnemen in uw .gitignore bestand zal afhangen van uw IDE. Hier zijn GitHub's .gitignore-aanbevelingen voor enkele populaire IDE's. U kunt zoeken naar uw IDE naar keuze en de geschetste bestanden toevoegen aan uw .gitignore bestand.

4. Afhankelijkheid en pakketbestanden

Afhankelijkheids- en pakketbestanden zijn bestanden die informatie bevatten over de afhankelijkheden en pakketten die door uw toepassing worden gebruikt. Diverse bouwtools, zoals de Node-pakketbeheerder (npm), genereer deze bestanden.

Als u bijvoorbeeld npm gebruikt om afhankelijkheden voor een JavaScript-project te beheren, wordt een "knooppunt_modules" in de hoofdmap van uw project. De map bevat alle geïnstalleerde afhankelijkheden voor uw project.

Deze map kan erg groot worden, vooral als uw project veel afhankelijkheden heeft of sommige afhankelijkheden grote bestandsgroottes hebben. Door de "knooppunt_modules" uit uw Git-repository, kunt u deze schoon houden en de grootte verkleinen.

Om te voorkomen dat de "knooppunt_modules" map naar je Git-repository, voeg de naam toe aan je .gitignore-bestand:

#.gitignore

node_modules/

5. Besturingssysteembestanden

Uw besturingssysteem en andere systeemtools kunnen bij normaal gebruik bestanden genereren. Dit kunnen logbestanden, tijdelijke bestanden en systeemconfiguratiebestanden zijn. Een voorbeeld is de Thumbs.db bestand op Windows en zijn macOS-equivalent, de .DS_Store bestand.

Het is over het algemeen een goede gewoonte om bestanden van het besturingssysteem uit te sluiten van je Git-repository, omdat ze zijn specifiek voor uw lokale omgeving en kunnen verschillen tussen verschillende computers en besturingssystemen systemen.

GitHub heeft aanbevolen .gitignore-richtlijnen voor ramen, macOS, En Linux.

Het belang van versiebeheer

Het gebruik van versiebeheer kan uw workflow aanzienlijk verbeteren en fouten en conflicten verminderen die kunnen optreden bij het werken aan een codebase. Met versiebeheer kunt u codewijzigingen eenvoudig volgen, beoordelen en naadloos samenwerken met teamleden.

U moet echter altijd bepaalde bestanden uitsluiten, zoals configuratiebestanden, IDE-bestanden en OS-bestanden. Dit houdt de grootte van uw repository laag en zorgt ervoor dat u geen gevoelige informatie lekt.