A Git által nyújtott egyik legalapvetőbb szolgáltatás a projekt története. Mivel a Git nyomon követi az adattárban végrehajtott fájlok összes változását, nagyon hatékony naplózási funkciókat kínál. A projekt előzményeit sokféleképpen lekérdezheti, és különféle adatokat kinyerhet és megjeleníthet egy rugalmas parancs segítségével.

A git napló A parancs hatalmas, a szokásos Git parancsok közül a legnagyobb. Kézikönyve több mint 2500 sor hosszú. Szerencsére, git napló a leghasznosabb viselkedés nagy részét csupán néhány kulcsfontosságú opcióval biztosítja.

Alapvető naplózás az alapértelmezett viselkedéssel

Alapértelmezés szerint, git napló a fordított, időrendi listát mutatja. Minden elkötelezettség tartalmazza a kivonatot, a szerzőt, a dátumot és az elkötelezettség üzenetet:

A parancs egy személyhívót (például kevesebbet, többet) használ a teljes kimenet megjelenítéséhez, így könnyedén navigálhat az eredményekben. Beállíthatja a Git-t egy tetszőleges program használatára, például a legtöbb személyhívó.

Itt van néhány git napló kimenet a git forráskód tárháza maga:

elkötelezi magát 670b81a890388c60b7032a4f5b879f2ece8c4558 (HEAD -> master, origin / next,
eredet / mester, származás / HEAD)
Szerző: Junio ​​C Hamano
Időpont: hétfő, június 13, 13:23:28, 2021 +0900
A második tétel
Aláírta: Junio ​​C Hamano

Az eredmény a végrehajtási hash-szal kezdődik (670...), amelyet az adott elkötelezettségre jelenleg utaló ágak listája követ (FEJ -> mesterstb.)

A következő sor leírja az elkötelezettség szerzőjét, megadva nevüket és e-mail címüket.

Az elkövetés teljes dátuma és ideje a következő sorban következik.

Végül megjelenik a véglegesítési üzenet teljes tartalma. A legtöbbet, amit a git napló kínál, a parancssori opciókkal vezérelheti. Kétféle opció létezik:

  • Formázás, amely meghatározza, hogy a Git hogyan jeleníti meg az egyes elkötelezettségeket.
  • Szűrés, amely meghatározza, hogy melyik követi el git napló magába foglalja.

A parancssori opciók mellett a git napló elfogad argumentumokat, amelyek fájlokat, véglegesítéseket, ágakat vagy más típusú hivatkozásokat határoznak meg. Ezek további szűrést alkalmaznak.

A Git napló kimenetének formázása

Az egyik legegyszerűbb beállítás a --egy sor opció, amely nagyon rövid kimenetet eredményez:

git log - online

A napló minden sora csak egy rövidített végrehajtási kivonatot és tárgyát tartalmazza az elkövetési üzenet. Ez kiváló módja annak, hogy áttekintést nyerjünk a projekttel kapcsolatos legutóbbi kötelezettségvállalásokról:

Sajnos más kontextus nélkül ez az információ nem mindig olyan hasznos. Lehet, hogy homályosan érzékeli a projektet, de hiányzik a dátumok és más hasznos információk a szerzőkről és az aktákról.

Ágdiagram megtekintése

A --grafikon opció lehetővé teszi az ágak közötti kapcsolatok vizualizálását. Nagyon alapvető, de segíthet a bonyolult történelem kibontásában.

git log --oneline --graph

Összefüggő: Hogyan lehet új fiókot létrehozni a Git-ben

Testreszabott szép teljesítmény

Bonyolultabb formázást érhet el, ha részletesen megadja a --szép választási lehetőség. A szintaxis nagyon egyszerűből sokkal összetettebbé válik, tehát a részletekért olvassa el a kézikönyvet.

git log - szép = rövid

Lényegében megegyezik a git napló dátum vagy teljes üzenet nélkül:

git napló - szép = oneline

Ezzel egyenértékű git log - online.

git napló - elég = teljesebb

Sok részletet tartalmaz. Elkülöníti még a szerzőt és az elkövetőt, akik elméletileg különböző emberek lehetnek:

A... val formátum: változat, megadhat egy karaktersorozatot, amely bármilyen tartalmat tartalmaz, beleértve a helyőrzőket, amelyeket különböző adatok cserélnek fel. Íme néhány helyőrző példa:

  • % H elkövetni hash
  • % h rövidített elkövetési hash
  • %hirdetés szerző dátuma
  • % ar szerző dátuma, rokona
  • % s az üzenet tárgyának elkötelezése
  • % b elkövetni az üzenet törzsét
  • % p rövidített szülő hashek

Fix karaktereket adhat a kimenethez és színezheti. Ez a példa a dátumformátum variációját is mutatja:

git napló - szép = formátum: '% C (automatikus)% h [% ad]% s' - dátum = rövid

Ne feledje, hogy zárójelben szerepel a dátum. Bármilyen formázást is választ, ha azt szeretné, hogy a kimenet hasznos legyen a folyamatban vagy más szövegfeldolgozási formákban, fontolja meg a kimenet egyes részeinek lehatárolását.

A különbségek megjelenítése a naplóban

Az adattár történetét szemlélve fontos részleteket maguk a különbségek jelentik. Végül is azt képviselik, ami valójában megváltozott a kódban! Kezdetnek összefoglalót kaphat az egyes elkötelezettségek melletti változásokról --shortstat:

git napló - shortstat

Ez hozzáad egy sort, például:

1 fájl megváltozott, 48 beillesztés (+), 2 törlés (-)

Minden egyes kötelezettség aljára. Gyakran látni fogja ezt a fajta összefoglalót - például a GitHub összes oldalán -, és ez egy hasznos módja annak, hogy gyorsan megítélje egy adott elkötelezettség körét. Részletesebb információkért a teljes patch kimenetet (diff-eket) is beillesztheti a -p zászló:

git log -p

Git napló kimenetének szűrése

Bármilyen formázást is alkalmazzon, az aktuális fiókban továbbra is megjelenik az összes végrehajtás teljes naplója. Annak ellenére, hogy a Git oldalakra bontja őket, mégis sok kimenet lehet. A következő lehetőségek lehetővé teszik a napló által elkövetett kötelezettségek testreszabását.

Összeggel korlátozva

Ha csak le akarja vágni az eredményeket, hogy a legutóbbi néhány elkötelezettség megjelenjen, használja a -[szám] szintaxis:

git log -2

Dátum szerinti korlátozás

Ha a dátumtartományra kívánja korlátozni a vállalások halmazát, használja a --mivel (--utána) és --amíg (--előtt) opciók. Ezek mindegyike ISO 8601 formátumú dátumot vesz fel. Használhatja bármelyiket --mivel vagy --amíg önmagukban, vagy mindkettő együtt adhat meg egy tartományt. Az opciók --utána és --előtt szinonimák.

git log --since = "2021-01-01" --until = "2021-05-01"

Fájl általi korlátozás

A Git-napló egy adott fájlra összpontosíthat, nem pedig az adattár minden fájljára. Ez nagyszerű segítség arra, hogy megtudja, hogyan változott egy adott fájl az idők során. Egyszerűen csatolja a fájlnevet a git parancs végéhez:

git napló fájlnév

Csak azokat a végrehajtásokat fogja látni, amelyek érintettek fájl név.

Ágak közötti különbségek

A fiók naplójának megtekintésekor néhány egyedi követelménye lehet. Például ahelyett, hogy megnézné a teljes történelmet, érdemes csak megnéznie, hogy mi változott az adott ágban. A Git napló segíthet a ref1..ref2 szintaxis. Három kissé eltérő megközelítést alkalmazhat:

  1. Tekintse meg a fő, de nem ágazati kötelezettségvállalásokat:
    git log - online eredet / ág..eredet / main
  2. Fiókban lévő, de nem fő tevékenységek megtekintése:
    git napló - online eredet /fő-..eredet/ág
  3. Csak fiókban vagy főben létező vállalások megtekintése:
    git log - egyenes eredet / ág...eredet / fő

Ahogy az ágak közötti előzményeket is megtekintheti a ref1..ref2 szintaxis, ugyanúgy megtekintheti a címkék közötti előzményeket is. Végül is a címkék és az ágak is referencia típusok.

git napló - abbrev-kötelezettség - szép = formátum: '% h% ar% s' v2.32.0-rc3..v2.32.0

Ha egy nagyobb projekt kiadási megjegyzéseit készíti elő, git shortlog legyen az első bejárati kikötője. Készít egy listát azokról a szerzőkről, akik mellett elkötelezettek vannak. Átadhat egy referenciatartományt, hogy korlátozza az előzményeket a git naplóhoz hasonló módon:

git shortlog v2.32.0-rc3..v2.32.0

A git show parancs még sokoldalúbb, mint git napló. Címkékkel és más típusú git objektumokkal képes működni a lekérdezési előzményeken túl. Sok lehetőséget oszt meg git napló, de csak akkor lesz rá igazán szüksége, ha be kell ásnia az alacsonyabb szintű részletekbe.

Tekintse át a múltat ​​a Git naplóval

A Git napló egy bonyolult parancs, de a legalapvetőbb lehetőségekből rengeteg hasznát veheti. A tároló előzményeinek böngészése kiváló módja annak megértéséhez, hogy milyen gyakran fordulnak elő változások, és hány ember hajtja végre őket. Miután jól megismerte a projekt történetét, kiváló helyzetben lesz ahhoz, hogy maga is hozzájáruljon ehhez.

Email
Csatlakozzon a közösségi kódolási trendhez, és járuljon hozzá a GitHub-tárolókhoz

Gyakorolni szeretné a kódoló izmokat és segíteni a nyílt forráskódú projektekben? Így járulhat hozzá a GitHubhoz.

Olvassa el a következőt

Kapcsolódó témák
  • Programozás
  • GitHub
  • Kódolási tippek
A szerzőről
Bobby Jack (54 cikk megjelent)

Bobby technológiai rajongó, aki szoftverfejlesztőként dolgozott a két évtized alatt. Szenvedélyesen játszik a játékokkal, a Switch Player Magazine Véleményszerkesztőjeként dolgozik, és elmerül az online publikálás és webfejlesztés minden aspektusában.

Tovább Bobby Jack-től

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz, amely műszaki tippeket, véleményeket, ingyenes e-könyveket és exkluzív ajánlatokat tartalmaz!

Még egy lépés…!

Kérjük, erősítse meg e-mail címét az imént elküldött e-mailben.

.