Git

Sådan bruges git blame

Sådan bruges git blame
git blame er en meget god sporingskommando for Git. git blame viser forfatteroplysningerne for hver linje i projektets sidst ændrede kildefil. Du kan finde forfatternavnet, forfatterens e-mail, commit hash osv. For den sidst ændrede kildefil linje for linje. Du vil snart se, hvad jeg praktisk talt mener.

I denne artikel vil jeg vise dig, hvordan du bruger git-skyld til at spore forfatterne af et projekt. Så lad os komme i gang.

Opsætning af et eksempel på et Git Repository:


Hvis du lærer Git, kan du klone ethvert Git-arkiv fra GitHub til din computer for at prøve kommandoerne i denne artikel. Hvis du vil bruge dit eget Git-arkiv, er det også fint.

Jeg vil klone h5bp / html5-kedelplade Git-arkiv fra GitHub til demonstration af git-skyld i denne artikel.

$ git klon https: // github.com / h5bp / html5-kedelplade.git

Naviger nu til html5-boilerplate / directory som følger:

$ cd html5-kedelplade /

I html5-kedelplade / bibliotek, jeg har nogle filer og mapper. I det næste afsnit vil jeg vise dig, hvordan du bruger git-skyld på dette Git-arkiv.

Grundlæggende anvendelse:

For at finde forfatteren og begå oplysninger om hver linje i den sidst ændrede version af filen (lad os sige myfile) i dit Git-lager, kører du git skyld som følger:

$ git bebrejder min fil

I mit Git-arkiv har jeg en fil gulpfile.babel.js. Lad os sige, jeg vil kontrollere forfatteren og begå oplysninger om denne fil linje for linje. For at gøre det ville jeg køre git-skylden som følger:

$ git bebrejder gulpfile.babel.js

Du burde få noget som dette. Her viser git blame indholdet af filen inklusive linjenumre til højre. Til venstre for hver linje viser git blame skylden hash, forfatteren, der er ansvarlig for denne forpligtelse, datoen og klokkeslættet for forpligtelsen. En forpligtelse kan ændre flere linjer med kode i en kildefil. En forpligtelse kan kun ændre en enkelt kodelinje i en kildefil. Så den samme commit hash kan vises for flere linjer. Det vises muligvis kun en gang. Det afhænger af forpligtelsen.

Herfra kan du se, hvilken forfatter der har ændret hvilken linje i kildefilen. Du kan også se, hvilken forpligtelse der er ansvarlig for den ændring, og hvornår ændringen blev foretaget.

Hvis filen har en masse linjer, kan du navigere ved hjælp af og piletasterne. Du kan også afslutte git-skyldvinduet ved hjælp af q på tastaturet.

Nu, hvis du vil lære mere om, hvad der ændrede sig i en commit, skal du blot kopiere commit-hash og bruge git-log som følger.

$ git log -p 2ad70775

Du skal være i stand til at se den fulde forpligtelsesmeddelelse, hvilke linjer der fjernes, og hvilke linjer der er tilføjet siden forpligtelsen før den.

Viser forfatter-e-mail:

Som standard viser git blame forfatternavnet. Hvis du i stedet vil se forfatterens e-mail, skal du køre git blame med -e mulighed som følger:

$ git skyld - e gulpfile.babel.js

Som du kan se, vises forfatterens e-mail i stedet for forfatterens navn.

Viser Long Commit Hash:

Som standard viser git-skyld korte kommission hashes, hvilket også er unikt. Så du kan bruge det uden problemer. Men hvis du foretrækker at se hash i fuld længde, kan du bruge -l mulighed for git skyld som følger.

$ git skyld -l gulpfile.babel.js

Som du kan se, vises de fulde længde-hashes vises i stedet for de korte.

Hvis du vil, kan du også kombinere flere muligheder for at få den ønskede effekt. For eksempel, for at se forfatterens e-mail og long commit hash, kan du kombinere -e og -l valgmuligheder sammen som følger:

$ git skyld -el gulpfile.babel.js

Viser rå tidsstempel:

Som standard viser git blame en pænt formateret dato og tid. Men hvis du af en eller anden grund har brug for dato og tid som tidsstempelværdier, kan du bruge -t mulighed for git skylden som følger:

$ git skyld - t gulpfile.babel.js

Som du kan se, vises tidsstempelværdierne.

Notering Specifikke række af linjer:

Hvis du kun vil inspicere bestemte linieområder i en fil ved hjælp af git-skyld, kan du bruge -L mulighed.

For at få vist et interval vha -L mulighed, brug git blame som følger:

$ git skyld - L startLineNumber, endLineNumber filePath

For eksempel for at få vist linjer 10-20 fra filen gulpfile.babel.js, kør git skylden som følger:

$ git skyld - L 10,20 gulpfile.babel.js

At vise N antal linjer, der starter fra linjen x, kør git skylden som følger:

$ git skyld - L X, + N

For eksempel at vise 5 linjer, der starter fra linjen 15 af filen gulpfile.babel.js, kør git skylden som følger:

$ git skyld - L 15, + 5 gulpfile.babel.js

At vise N antal linjer før linjen x, kør git skylden som følger:

$ git skyld -L X, -N

For eksempel at vise 5 linjer før fra linjen 15 (inklusive linje 15) af filen gulpfile.babel.js, kør git skylden som følger:

$ git skyld - L 15, -5 gulpfile.babel.js

Få hjælp:

git blame har mange flere muligheder. Jeg dækkede de almindelige i denne artikel. Hvis du har brug for hjælp til nogen af ​​mulighederne for git blame, kan du tjekke mandsiden for git blame som følger:

$ mand git-skyld

Eller,

$ git hjælp skylden

Mandsiden med git skyld.

Så det er sådan, du bruger git-skyld på dit ønskede Git-arkiv. Tak, fordi du læste denne artikel.

Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har for nylig læst om Microsoft Sculpt Touch trådløs mus og besluttede at købe den. Efter at have brugt det et stykke tid besluttede jeg at dele m...
Mus AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
AppyMouse pegefelt på skærmen og musemarkør til Windows-tablets
Tabletbrugere savner ofte musemarkøren, især når de er vante til at bruge bærbare computere. Touchscreen-smartphones og tablets har mange fordele, og ...
Mus Midterste museknap fungerer ikke i Windows 10
Midterste museknap fungerer ikke i Windows 10
Det midterste museknap hjælper dig med at rulle gennem lange websider og skærme med en masse data. Hvis det stopper, vil du ende med at bruge tastatur...