Kuinka tarkistaa projektin historia Git -lokin avulla

Kuinka tarkistaa projektin historia Git -lokin avulla

Yksi tärkeimmistä Gitin tarjoamista palveluista on projektihistoria. Koska Git seuraa kaikkia arkistossa tehtyihin tiedostoihin tehtyjä muutoksia, se voi tarjota erittäin tehokkaita lokiominaisuuksia. Voit hakea projektin historiasta monella eri tavalla ja voit poimia ja näyttää erilaisia ​​tietoja yhdellä joustavalla komennolla.





The git loki komento on valtava, suurin kaikista tavallisista Git -komennoista. Sen käsikirja on yli 2500 riviä pitkä. Onneksi, git loki tarjoaa suurimman osan hyödyllisimmästä käyttäytymisestään vain muutamalla avainvaihtoehdolla.





Peruskirjaus oletuskäyttäytymisellä

Oletuksena, git loki näyttää käänteisen kronologisen luettelon sitoumuksista. Jokainen sitoutuminen sisältää tiivisteen, tekijän, päivämäärän ja sitoutumisviestin:





Komento näyttää hakulaitteen (esim. Vähemmän, enemmän) näyttääkseen koko tuotoksen, jotta voit helposti navigoida tuloksissa. Voit määrittää Gitin käyttämään valitsemaasi ohjelmaa, kuten useimpia hakulaitteita.

Tässä on joitakin git -lokituloksia git -lähdekoodin arkisto itse:



commit 670b81a890388c60b7032a4f5b879f2ece8c4558 (HEAD -> master, origin/next,
origin/master, origin/HEAD)
Author: Junio C Hamano
Date: Mon Jun 14 13:23:28 2021 +0900
The second batch
Signed-off-by: Junio C Hamano

Tulos alkaa sitoutumishaulla ( 670 ...), jota seuraa luettelo haaroista, jotka tällä hetkellä osoittavat kyseistä sitoutumista ( PÄÄ -> mestari , jne.)

kopioi video verkkosivustolta

Seuraavalla rivillä kuvataan tämän sitoumuksen tekijä ja annetaan heidän nimensä ja sähköpostiosoitteensa.





Sitoumuksen koko päivämäärä ja kellonaika seuraavat seuraavalla rivillä.

Lopuksi sitoumusviestin koko sisältö tulee näkyviin. Voit hallita suurinta osaa kaikesta muusta, mitä git-loki tarjoaa komentorivivalinnoilla. Vaihtoehtoja on kahta päätyyppiä:





  • Muotoilu, joka määrittää, miten Git näyttää kunkin tehtävän.
  • Suodatus, joka määrittää, mikä sitoutuu git loki sisältää.

Komentorivivalintojen lisäksi git-loki hyväksyy argumentteja, jotka määrittävät tiedostoja, sitoumuksia, haaroja tai muita viittauksia. Nämä koskevat lisäsuodatusta.

Git -lokilähdön muotoilu

Yksi yksinkertaisimmista säädöistä on --yksi linja vaihtoehto, joka tuottaa erittäin lyhyen tuloksen:

git log --oneline

Lokin jokainen rivi sisältää nyt vain lyhennetyn sitoutumishajautuksen ja vahvistusviestin aiheen. Tämä on erinomainen tapa saada yleiskatsaus hankkeeseen viime aikoina tehdyistä sitoumuksista:

Valitettavasti ilman muuta kontekstia nämä tiedot eivät ole aina niin hyödyllisiä. Se saattaa antaa sinulle epämääräisen tunteen projektista, mutta siitä puuttuu päivämääriä ja muuta hyödyllistä tietoa tekijöistä ja tiedostoista.

Haarakaavion tarkasteleminen

The --kaavio -vaihtoehdon avulla voit visualisoida haarojen väliset suhteet. Se on hyvin yksinkertaista, mutta voi auttaa selvittämään monimutkaista historiaa.

git log --oneline --graph

Aiheeseen liittyviä: Kuinka luoda uusi haara Gitiin

Räätälöity kaunis ulostulo

Voit saavuttaa monimutkaisemman muotoilun määrittämällä sen yksityiskohtaisesti käyttämällä --nätti vaihtoehto. Syntaksi muuttuu hyvin yksinkertaisesta paljon monimutkaisemmaksi katso täydelliset tiedot käyttöoppaasta .

sovelluksia, jotka opettavat sinulle piirtämistä
git log --pretty=short

On pohjimmiltaan sama kuin git loki ilman päivämäärää tai koko viestiä:

git log --pretty=oneline

On vastaava kuin git log --oneline .

git log --pretty=fuller

Sisältää paljon yksityiskohtia. Se jopa erottaa tekijän ja tekijän, jotka teoriassa voivat olla erilaisia ​​ihmisiä:

Kanssa muoto: Voit tarjota merkkijonon, joka sisältää haluamasi sisällön, mukaan lukien paikkamerkit, jotka korvataan eri tiedoilla. Tässä on esimerkkejä paikkamerkkeistä:

  • %H tehdä hash
  • %h lyhennetty sitoutumishajautus
  • % - kirjoittajan päivämäärä
  • %Kanssa kirjoittajan päivämäärä, sukulainen
  • %s sitoutua viestin aiheeseen
  • % b sitoutua viestin runkoon
  • %s lyhennetty ylätason tiiviste

Voit lisätä tulosteeseen kiinteitä merkkejä ja värittää ne. Tässä esimerkissä näkyy myös päivämäärän muunnelma:

git log --pretty=format:'%C(auto) %h [%ad] %s' --date=short

Huomaa, että hakasulkeet ympäröivät päivämäärän. Valitsemastasi muotoilusta riippumatta, jos haluat, että tulostuksesta on hyötyä putkilinjassa tai muussa tekstinkäsittelymuodossa, sinun on harkittava, kuinka rajata tulosteen jokainen osa.

Näytetään erot Lokissa

Tärkeä yksityiskohta arkiston historiaa tarkasteltaessa on erot itse. Ne edustavat sitä, mikä koodissa on todella muuttunut! Aloittelijoille voit saada yhteenvedon muutoksista jokaisen sitoutumisen yhteydessä käyttämällä -lyhyt tila :

git log --shortstat

Tämä lisää seuraavan rivin:

1 file changed, 48 insertions(+), 2 deletions(-)

Jokaisen tehtävän loppuun. Näet usein tällaisen yhteenvedon - esimerkiksi GitHubin sivuilla - ja se on hyödyllinen tapa arvioida nopeasti tietyn sitoumuksen laajuus. Jos haluat lisätietoja, voit sisällyttää täyden patch -lähdön (erot) käyttämällä -p lippu:

git log -p

Git -lokin lähdön suodatus

Riippumatta siitä, mitä muotoilua käytät, näet silti nykyisen haaran kaikkien lokien täydellisen lokin. Vaikka Git jakaa ne sivuiksi, se voi silti tuottaa paljon. Seuraavien asetusten avulla voit muokata lokin sisältämiä sitoumuksia.

Rajoitetaan määrällä

Jos haluat vain leikata tulokset näyttämään muutamat viimeisimmät sitoumukset, käytä -[määrä] syntaksi:

git log -2

Rajoitus päivämäärän mukaan

Jos haluat rajoittaa sitoumukset tietylle ajanjaksolle, käytä --siitä asti kun ( --jälkeen ) ja --siihen asti kun ( --ennen ) vaihtoehtoja. Näissä on päivämäärä ISO 8601 -muodossa. Voit käyttää jompaakumpaa --siitä asti kun tai --siihen asti kun erikseen tai molemmat yhdessä määrittämään alueen. Vaihtoehdot --jälkeen ja --ennen ovat synonyymejä.

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

Rajoitus tiedoston mukaan

Git -loki voi keskittyä tiettyyn tiedostoon eikä kaikkiin arkistosi tiedostoihin. Tämä auttaa sinua selvittämään, miten tietty tiedosto on muuttunut ajan myötä. Liitä vain tiedostonimi git -komennon loppuun:

git log filename

Näet vain ne toimet, jotka vaikuttivat Tiedoston nimi .

Eri haarat

Sivuliikkeen lokia tarkasteltaessa sinulla saattaa olla ainutlaatuisia vaatimuksia. Esimerkiksi sen sijaan, että näet koko historian, haluat ehkä vain nähdä, mikä on muuttunut kyseisessä haarassa. Git -loki voi auttaa ref1..viite2 syntaksi. Voit käyttää kolmea hieman erilaista lähestymistapaa:

  1. Näytä sitoumukset, jotka ovat pääosassa, mutta eivät haara: | _+_ |
  2. Näytä sitoumukset, jotka ovat haaratoimistossa, mutta eivät tärkeimmät: | _+_ |
  3. Tarkastele sitoumuksia, jotka ovat olemassa vain haara- tai pääalueella: | _+_ |

Eroja kahden tunnisteen välillä

Aivan kuten voit tarkastella historiaa sivuliikkeiden välillä käyttämällä ref1..viite2 syntaksi, voit myös tarkastella historiaa tunnisteiden välillä samalla tavalla. Loppujen lopuksi sekä tunnisteet että haarat ovat viitetyyppejä.

git log --oneline origin/branch..origin/main

Jos valmistat julkaisutietoja suurempaa projektia varten, git lyhytlogi pitäisi olla ensimmäinen saapumissatama. Se tuottaa luettelon tekijöistä, joiden rinnalla on sitoutuneita aiheita. Voit välittää sille viitealueen rajoittaaksesi historiaa samalla tavalla kuin git -loki:

git log --oneline origin/ main ..origin/ branch

The git show komento on vielä monipuolisempi kuin git loki . Se voi toimia tunnisteiden ja muunlaisten git -objektien kanssa sitoutumishistorian ulkopuolella. Se jakaa monia vaihtoehtoja git loki , mutta tarvitset sitä vain, jos haluat kaivaa alemman tason yksityiskohtia.

Tarkista menneisyys Git -lokin avulla

Git -loki on monimutkainen komento, mutta voit saada paljon käyttöä sen perusvaihtoehdoista. Tietovaraston historian selaaminen on erinomainen tapa ymmärtää, kuinka usein muutoksia tapahtuu ja kuinka monet ihmiset tekevät niitä. Kun olet ymmärtänyt hyvin projektin historian, sinulla on hyvät mahdollisuudet osallistua siihen itse.

kuinka monta tuntia tulla mestariksi
Jaa Jaa Tweet Sähköposti Liity sosiaalisen koodauksen trendiin ja osallistu GitHub -arkistoihin

Haluatko treenata koodauslihaksiasi ja auttaa avoimen lähdekoodin projekteissa? Näin voit osallistua GitHubiin.

Lue seuraava
Liittyvät aiheet
  • Ohjelmointi
  • GitHub
  • Koodausvinkkejä
Kirjailijasta Bobby Jack(58 artikkelia julkaistu)

Bobby on teknologian harrastaja, joka työskenteli ohjelmistokehittäjänä lähes kaksi vuosikymmentä. Hän on intohimoinen pelaamisesta, työskentelee Switch Editor Magazine -lehden arvostelutoimittajana ja on upotettu kaikkeen verkkojulkaisemiseen ja -kehitykseen.

Lisää Bobby Jackilta

tilaa uutiskirjeemme

Liity uutiskirjeeseemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e -kirjoja ja ainutlaatuisia tarjouksia!

Klikkaa tästä tilataksesi