Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 8411|Svar: 2

Git ignorerar commits .gitignore

[Kopiera länk]
Publicerad på 2019-07-11 14:08:03 | | |
När vi använder Git vill vi gärna ha filer som loggar, temporära filer, kompilerade mellanliggande filer etc. som inte skickas till kodförrådet, så vi behöver ställa in motsvarande ignorerningsregler för att ignorera commit av dessa filer.

Git ignorerar metoden för filcommits

Det finns tre sätt att ignorera filer du inte vill committa i Git.

Definiera .gitignore-filen i ditt Git-projekt

Detta hanteras genom att definiera en .gitignore-fil i en mapp i projektet, där motsvarande ignorer-regler är definieradeAktuell mappGit-commitbeteendet för filen under
.gitignore-filer kan skickas till publika arkiv, vilket innebär att alla utvecklare under projektet delar en definierad uppsättning ignorer-regler.
I .gitingore-filen, ange en ignorer-regel på varje rad, enligt motsvarande syntax. Till exempel:


Ange exkluderande filer i inställningarna för Git-projektet

Detta är bara en tillfällig specifikation av projektets beteende, vilket kräver att man redigerar .git/info/exklusiv-filen under det aktuella projektet, och sedan skriver filen som commit måste ignoreras.
Observera att rotkatalogen för de ignorerade filerna som anges på detta sätt är projektets rot.


En .gitignore-fil som definierar Git-global

Förutom att kunna definiera .gitignore-filer i ditt projekt kan du också skapa en global git .gitignore-fil för att hantera beteendet i alla Git-projekt. Denna metod delas inte mellan olika projektutvecklare och är ett beteende på Git-applikationsnivå ovanpå projektet.

Detta kräver också att man skapar en motsvarande .gitignore-fil, som kan placeras var som helst. Konfigurera sedan Git med följande kommando:




Git ignorerar regler

För detaljerade regler för ignorering, vänligen se den officiella engelska dokumentationen på adressen:Inloggningen med hyperlänken är synlig.

Git ignorerar regelprioritet

I .gitingore-filen, ange en ignorer-regel för varje rad, och Git kontrollerar flera källor när regler ignoreras, med följande prioritet (från högsta till lägsta):



  • Läs de tillgängliga ignorerningsreglerna från kommandoraden
  • Reglerna definieras av den aktuella katalogen
  • Reglerna som definieras av föräldrakatalogen är rekursiva
  • $GIT_DIR/info/exlyder fil
  • core.excludesfile


Git ignorerar regelmatchningssyntax

I .gitignore-filen är syntaxen för ignorer-regeln för varje rad följande:


  • Mellanslag som inte matchar godtyckliga filer kan användas som separatorer och kan undvikas med backslashes
  • # Filidentifieringskommentaren i början kan undvikas med en backslash
  • ! Schemaidentifieringen i början är negativ, och filen kommer att inkluderas igen, om filens överlägsna katalog är utesluten, använd ! kommer inte att tas med igen. Flykt kan göras med en backslash
  • / 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
  • / 开始的模式匹配项目跟目录
  • Om ett mönster inte innehåller ett snedstreck matchar det innehållet relativt den aktuella .gitignore-filvägen, och om mönstret inte finns i .gitignore-filen, relativt projektets rot
  • ** Matchande flernivåkataloger kan användas i början, mitt och slut
  • ? Universell matchning av individuella tecken
  • [ ] Universell matchlista för individuella karaktärer



Vanliga matchningsexempel:

  • bin/: ignorerar bin-mappen under den aktuella sökvägen, allt under den mappen ignoreras, inte bin-filen
  • /bin: 忽略根目录下的bin文件
  • /*.c: 忽略 cat.c,不忽略 build/cat.c
  • debug/*.obj: Ignorera debug/io.obj, ignorera inte debug/common/io.obj och tools/debug/io.obj
  • **/foo: ignorera /foo, a/foo, a/b/foo, etc
  • a/**/b: ignorera a/b, a/x/b, a/x/y/b, osv
  • !/bin/run.sh: Ignorera inte run.sh filer i bin-katalogen
  • *.log: Ignorera alla .log filer
  • config.php: 忽略当前路径的 config.php 文件



.gitignore-regeln träder inte i kraft

.gitignore kan endast ignorera filer som inte spåras från början, och att modifiera .gitignore är ineffektivt om vissa filer redan har inkluderats i versionshantering.

Lösningen är att ta bort den lokala cachen (ändra den till ospårat tillstånd) innan du committar:


(Slut)





Föregående:JS--Plugin: Trädutveckling och implementeringsbilaga är nedladdningsbar!!
Nästa:PHP-konfiguration av http-protokollschema
Publicerad på 2019-07-12 09:32:26 |
.gitignore är ogiltig efter ändringen
https://www.itsvse.com/thread-4367-1-1.html
(Källa: Architect_Programmer)
 Hyresvärd| Publicerad på 2024-09-24 12:46:32 |
Konfigurationsfilen Git-projektet .gitignore träder i kraft
https://www.itsvse.com/thread-10816-1-1.html
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com