A Git használata során szeretjük, ha olyan fájlokat, mint a naplók, ideiglenes fájlok, fordított köztes fájlok stb. ne kerüljenek be a kódtárba, ezért megfelelő figyelmen kívül hagyási szabályokat kell beállítanunk, hogy figyelmen kívül hagyjuk ezeknek a fájloknak a commitálását.
A Git figyelmen kívül hagyja a fájl commit-ek módszerét
Három módja van annak, hogy figyelmen kívül hagyd azokat a fájlokat, amiket nem akarsz a Git-ben elkötelezni.
Definiáld a .gitignore fájlt a Git projektedben
Ezt úgy kezelik, hogy egy .gitignore fájlt definiálunk egy mappában a projektben, ahol a megfelelő figyelmen kívül hagyási szabályok vannak meghatározvaJelenlegi mappaA fájl Git commit viselkedése a A .gitignore fájlok beküldhetők nyilvános repozióriumokba, ami azt jelenti, hogy a projekt minden fejlesztője egy meghatározott figyelmen kívül hagyási szabálykészletet oszt meg. A .gitingore fájlban minden soron megadjon egy figyelmen kívül hagyás szabályt, a megfelelő szintaxis alapján. Például:
A kizáró fájlokat a Git projekt beállításaiban határozd meg
Ez csak egy ideiglenes specifikáció a projekt viselkedéséről, amely megköveteli a .git/info/exclude fájl szerkesztését a jelenlegi projekt alatt, majd azt a fájlt kell írni, amelyhez a commit figyelmen kívül kell hagyni. Fontos megjegyezni, hogy az ilyen módon megadott figyelmen kívül hagyott fájlok gyökérkönyvtára a projekt gyökere.
Egy .gitignore fájl, amely a Git globális meghatározását definiálja
A projektben .gitignore fájlok definiálása mellett globális git .gitignore fájlt is beállíthatsz, amely minden Git projekt viselkedését kezeli. Ez a megközelítés nem osztott meg a különböző projektfejlesztők között, hanem a Git alkalmazás szintjén a projekt tetején zajló viselkedés.
Ez egy megfelelő .gitignore fájl létrehozását is igényli, amely bárhová elhelyezhető. Ezután konfiguráld a Git-et a következő parancsot:
Git figyelmen kívül hagyja a szabályokat
A részletes figyelmen kívül hagyó szabályokért kérjük, tekintse meg a hivatalos angol nyelvű dokumentációt a címen:A hiperlink bejelentkezés látható.
A Git figyelmen kívül hagyja a szabályprioritást
A .gitingore fájlban minden sorhoz megadj egy figyelmen kívül hagyó szabályt, és a Git ellenőriz több forrást a szabályok figyelmen kívül hagyásakor a következő prioritással (a legmagasabbtól a legalacsonyabbaig):
- Olvassa el a rendelkezésre álló figyelmen kívül hagyás szabályait a parancssorról
- A jelenlegi könyvtár által meghatározott szabályok
- A szülőkönyvtár által meghatározott szabályok rekurzívak
- $GIT_DIR/info/exclude fájl
- core.excludesfile
A Git figyelmen kívül hagyja a szabálypárosítási szintaxist
A .gitignore fájlban minden sorra a figyelmen kívül hagyás szabály szintaxisa a következő:
- Azok a terek, amelyek nem egyeznek tetszőleges fájlokkal, elválasztóként használhatók, és visszafelé lecsapással kiszabadulhatnak
- # A fájlazonosító megjegyzés elején visszafelé lecsapás segítségével kiszabadulhat
- ! A séma azonosítása az elején negatív, és a fájl ismét bekerül, ha a fájl szülőkönyvtára kizárul, használd ! Többé nem kerül bele. Az Escape megoldható egy backslash-jel segítségével
- / 结束的模式只匹配文件夹以及在该文件夹路径下的内容,但是不匹配该文件
- / 开始的模式匹配项目跟目录
- Ha egy minta nem tartalmaz lecsapást, akkor a tartalom a jelenlegi .gitignore fájlúthoz viszonyítva egyezik, ha a minta nincs a .gitignore fájlban, akkor a projekt gyökéhez viszonyítva
- ** A többszintű katalógusok az elején, közepén és végén használhatók
- ? Univerzális egyedi karakterek párosítása
- [ ] Univerzális párosításlista az egyes karakterekről
Gyakori párosítási példák:
- bin/: figyelmen kívül hagyja a bin mappát az aktuális út alatt, minden azon a mappán belül marad figyelmen kívül, nem a bin fájlt
- /bin: 忽略根目录下的bin文件
- /*.c: 忽略 cat.c,不忽略 build/cat.c
- debug/*.obj: Figyelmen kívül hagyd a debug/io.obj, ne hagyd figyelmen kívül a debug/common/io.obj és a tools/debug/io.obj
- **/foo: figyelmen kívül hagyd /foo, a/foo, a/b/foo stb
- a/**/b: figyelmen kívül hagyjuk az a/b, a/x/b, a/x/y/b, stb
- !/bin/run.sh: Ne hagyd figyelmen kívül run.sh fájlokat a bin könyvtárban
- *.log: Figyelmen kívül hagyd az összes .log fájlt
- config.php: 忽略当前路径的 config.php 文件
.gitignore szabály nem lép életbe
A .gitignore csak azokat a fájlokat tudja figyelmen kívül hagyni, amelyeket eredetileg nem követtek, és a .gitignore módosítása hatástalan, ha néhány fájl már szerepelt a verziószerkesztésben.
A megoldás az, hogy töröljük a helyi gyorstárt (módosítod nyomkövetés nélküli állapotra), mielőtt elköteleznéd:
(Vége)
|