Ne katram jūsu projekta failam jābūt versijai kontrolētam. Uzziniet, kuri failu veidi ir jāizslēdz no avota repo.
Versijas kontrole ir būtisks rīks, lai izsekotu izmaiņas jūsu kodu bāzē, taču jūs ne vienmēr vēlaties izsekot katru failu.
Lai izvairītos no nekārtības un samazinātu sensitīvas informācijas izplatīšanas risku, varat izmantot failu ar nosaukumu .gitignore. Šis fails norāda, kurus failus un direktorijus Git nedrīkst indeksēt.
Var būt izaicinājums noteikt, kurus failus iekļaut .gitignore, it īpaši, ja esat iesācējs izstrādes jomā. Uzziniet, kuri faili jāpievieno savam .gitignore, lai nodrošinātu vienmērīgāku Git darbplūsmu.
.gitignore faila izveide
Lai jūsu .gitignore failam būtu kāda ietekme, jūsu projektā ir jābūt inicializētam Git.
Jūs varat inicializēt Git, savā terminālī izpildot tālāk norādīto komandu:
git init
Šī komanda jūsu projektam izveido jaunu Git repozitoriju slēptā “.git” apakšdirektorijā, kurā ir visi faili un direktoriji, kas nepieciešami projekta versiju kontrolei.
Lai palaistu šo komandu, jums ir jābūt Git ir instalēts jūsu sistēmā.
Pēc tam izveidojiet savu .gitignore failu, izpildot tālāk norādīto komandu:
pieskarties.gitignore
Palaižot iepriekš minēto komandu, jūsu pašreizējā direktorijā tiek izveidots jauns fails “.gitignore”. Varat izslēgt failu no Git, pievienojot faila nosaukumu vai faila ceļu (ja fails atrodas citā direktorijā nekā .gitignore fails).
Git nav nepieciešams izsekot katram failam jūsu projektā, un dažu failu izsekošana var izraisīt neparedzētas problēmas. Šie ir daži no failiem, kas jāpievieno savam .gitignore.
1. Konfigurācijas faili
Konfigurācijas failos tiek glabāti iestatījumi un citi parametri, ko jūsu lietojumprogrammas izmanto, lai definētu un pielāgotu savu darbību. Šajos failos bieži tiek glabātas datu bāzes savienojuma virknes, API atslēgas un cita sensitīva informācija, kuru nevajadzētu atklāt savā Git repozitorijā.
Ja savā repozitorijā iekļaujat konfigurācijas failus, to saturu var skatīt ikviens, kurš tam var piekļūt. Tas var ietvert sensitīvu informāciju, kas var izraisīt drošības pārkāpumus un citas problēmas.
Lai izslēgtu konfigurācijas failus no sava Git repozitorija, pievienojiet savam failam konkrētus failu nosaukumus vai mapju nosaukumus .gitignore failu.
Piemēram, varat pievienot tālāk esošo rindiņu savam .gitignore failu ignorēt a .env failu.
.env
2. Veidojiet artefaktus
Būvējuma artefakti ir apkopoti vai ģenerēti faili, kas tiek iegūti, veidojot projektu. Šie faili parasti atrodas a "mērķis" vai "būvēt" direktoriju.
Būvējuma artefakti var ietvert kompilētas Java klases, JAR failus, WAR failus, bināros failus, izplatīšanas pakotnes, atskaites, žurnālfailus un citus, kas ģenerēti veidošanas procesa laikā.
Parasti ir laba prakse no Git krātuves izslēgt būvēšanas artefaktus, jo tie var būt ļoti lieli. Tie var būt arī mazāk pārnēsājami nekā jūsu avota faili, un tie attiecas tikai uz noteiktu vidi. To iekļaušana repozitorijā var palielināt repozitorija lielumu un palēnināt tā klonēšanu un darbu ar to.
Lai no Git krātuves izslēgtu būvēšanas artefaktus, pievienojiet "mērķis/" vai "būvēt/" direktorijā jūsu .gitignore failu.
Piemēram:
# .gitignore
mērķis/
būvēt/
3. Integrētās izstrādes vides faili
Integrētās izstrādes vides (IDE) faili ir konfigurācijas faili, projekta metadati un citi faili, ko jūsu IDE ģenerē, kad veidojat vai atverat projektu. Šie faili ir raksturīgi katram IDE. Jūsu IDE izmanto šos failus, lai konfigurētu projekta iestatījumus.
Šie faili nav nepieciešami jūsu lietojumprogrammas izveidei vai palaišanai, un tie bieži var radīt problēmas, ja tie ir saistīti ar koplietojamu Git repozitoriju. Piemēram, dažādi cilvēki jūsu komandā var izmantot dažādas IDE vai versijas, un IDE specifisku failu pievienošana var izraisīt sapludināšanas konfliktus un apgrūtināt sadarbību projektā.
Tā kā šie faili ir specifiski IDE, faili, kas jāiekļauj jūsu .gitignore fails būs atkarīgs no jūsu IDE. Šeit ir GitHub .gitignore ieteikumi dažiem populāriem IDE. Varat meklēt savu izvēlēto IDE un pievienot ieskicētos failus savam .gitignore failu.
4. Atkarības un pakotņu faili
Atkarības un pakotņu faili ir faili, kas satur informāciju par atkarībām un pakotnēm, ko izmanto jūsu lietojumprogramma. Dažādi būvēšanas rīki, piemēram mezgla pakotņu pārvaldnieks (npm), ģenerējiet šos failus.
Piemēram, ja izmantojat npm, lai pārvaldītu JavaScript projekta atkarības, tas izveidos "node_modules" mapi jūsu projekta saknes direktorijā. Direktorijā ir visas jūsu projekta instalētās atkarības.
Šis direktorijs var kļūt ļoti liels, it īpaši, ja jūsu projektam ir daudz atkarību vai dažām atkarībām ir lieli failu izmēri. Izslēdzot "node_modules" mapi no sava Git repozitorija, varat saglabāt to tīru un samazināt tās lielumu.
Lai nepievienotu "node_modules" direktorijā Git repozitorijā, pievienojiet tā nosaukumu savam .gitignore failam:
#.gitignore
node_modules/
5. Operētājsistēmas faili
Jūsu operētājsistēma un citi sistēmas rīki var ģenerēt failus parastas lietošanas laikā. Tie var ietvert žurnālfailus, pagaidu failus un sistēmas konfigurācijas failus. Piemērs ir Īkšķi.db failu operētājsistēmā Windows un tā macOS ekvivalentu .DS_Store failu.
Parasti ir laba prakse izslēgt operētājsistēmas failus no sava Git repozitorija, kā tie ir raksturīgi jūsu vietējai videi un var atšķirties dažādos datoros un operētājsistēmās sistēmas.
GitHub ir ieteikusi .gitignore vadlīnijas Windows, macOS, un Linux.
Versiju kontroles nozīme
Izmantojot versiju kontroli, var ievērojami uzlabot darbplūsmu un samazināt kļūdas un konfliktus, kas var rasties, strādājot ar kodu bāzi. Izmantojot versiju kontroli, varat viegli izsekot koda izmaiņām, tās pārskatīt un nemanāmi sadarboties ar komandas locekļiem.
Tomēr vienmēr ir jāizslēdz noteikti faili, piemēram, konfigurācijas faili, IDE faili un OS faili. Tas samazinās jūsu repozitorija lielumu un nodrošinās, ka netiks nopludināta sensitīva informācija.