Git

Kuidas kasutada Git-silte oma arenguprotsesside parandamiseks

Kuidas kasutada Git-silte oma arenguprotsesside parandamiseks
Enamiku arendustiimide jaoks on Git muutunud oluliseks versioonihalduse tööriistaks. Giti populaarsuse suur põhjus on sujuv oskus filiaale luua. Arendusmeeskonnad saavad harude abil spetsiifiliste funktsioonide või versioonide väljatöötamiseks. Kuid Giti silt on sageli tähelepanuta jäetud käsk, mis aitab meeskondadel oma töövooge lihtsustada. Selles artiklis tutvume Giti märgistamise võimalustega, kuidas ja miks.

Mis on Git-sildid?

Git-märgendid osutavad teatud toimingutele. Need on nagu järjehoidjad. Siltide loomiseks võite kasutada mis tahes tüüpi kokkuleppeid. Kuid enamik arendusmeeskondi kasutab versiooninumbreid nagu v1.0.1 või v.1.1-a1 siltide loomiseks.

Siltide loomine

Gitis on kahte tüüpi silte:

Kerged sildid

Kergekaalulisi silte on lihtne luua. Võite kasutada lihtsalt järgmist käsurida:

$ git silt

Need sildid on salvestatud .teie töötava hoidla kaust git.

Loome mõned kerged Giti sildid:

$ git silt v1.0.1
$ giti silt Release-20190401

Esimesel juhul lõime sildi „v1.0.1 ”. Teisel juhul lõime sildi „Release-20190401”. Kerged sildid ei anna mingit väärtust. Samuti on oluline märkida, et kuna need kaks silti tehti tagurpidi, osutavad nad samale pühendumisele.

Kommenteeritud sildid

Kommenteeritud märkidega saate salvestada rohkem teavet. Nende siltide loomiseks võite kasutada valikut -a

$ git silt -a

Proovime luua kommenteeritud sildi:

git tag -a v1.0.2

See avab tekstiakna, et saaksite sisestada kommentaari, mis peaks välja nägema järgmine:

#
# Kirjutage siltile sõnum:
# V1.0.2
# Tähega "#" algavaid ridu ignoreeritakse.

Sisestage kommentaar ja salvestage see. Niisiis, nüüd teie silt v1.0.2 salvestatakse koos kommentaariga. Teise võimalusena saate kommentaari otse käsureale sisestada järgmiselt:

git tag -a v1.0.3-m "Minu versioon 1.0.3 "

Sildide leidmine koodist

Nüüd, kui oleme loonud mõned sildid, vaatame, mis meil on:

$ git silt -l
Väljaanne-20190401
v1.0.1
v1.0.2
v1.0.3

Näeme, et kõik meie sildid kuvatakse tähestikulises järjekorras. Siltide kohta saate lisateavet, kasutades „-n”Kus tähistab kommentaaride ridade arvu.

$ git silt -n1
Väljaanne-20190401 Uuendatud README.md
v1.0.1 Uuendatud README.md
v1.0.2 Minu versioon 1.0.2
v1.0.3 Minu versioon 1.0.3

Siin saate märgata erinevust kergete ja märkustega siltide vahel. Selles näites on väljaanded „Release-20190401” ja „v1.0.1 ”on kerged sildid. „V1.0.2 ”ja„ v1.0.3 ”on märkustega sildid. Kõik nad osutavad samale pühendumisele (pühendu 34671):

$ git logi
pühenduma 106e0bb02a58ec3e818e9acdf3bb19a9247a0e84 (HEAD -> master, silt: v1.0.4)
Autor: Zak H
Kuupäev: laup 6. aprill 21:06:02 2019 -0700
 
Lisatud funktsioon 2
 
toime panema 161c6e564e79624623ed767397a98105426d0ec4
Autor: Zak H
Kuupäev: laup 6. aprill 21:05:25 2019 -0700
 
Lisatud funktsioon 1
 
pühenduma 34671d824f9b9951e57f867998cb3c02a11c4805 (silt: v1.0.3, silt: v1.0.2,
silt: v1.0.1, silt: Release-20190401)
Autor: Zak H
Kuupäev: laup 6. aprill 20:24:53 2019 -0700
 
Uuendatud README.md
 
pühendama afe9b0c7c9fbce3c3d585afe67358a5eec226e2c (päritolu / kapten)
Autor: Zak H
Kuupäev: laup 6. aprill 20:23:55 2019 -0700
 
Selles

Kerged sildid näitavad siiski pühendumise enda kommentaare, mis on „Uuendatud README.md ”, samal ajal kui kommenteeritud sildid näitavad üksikuid kommentaare, mis neile märgendi loomise käigus lisati.

Näpunäide: Kui soovite leida konkreetse sildi kohustuse numbri, võite kasutada käsku "git show":

$ git show v1.0.3
silt v1.0.3
Siltija: Zak H
Kuupäev: laup 6. aprill 20:43:30 2019 -0700
 
Minu versioon 1.0.3
 
pühenduma 34671d824f9b9951e57f867998cb3c02a11c4805 (silt: v1.0.3, silt: v1.0.2, silt:
v1.0.1, silt: Release-20190401)
Autor: Zak H
Kuupäev: laup 6. aprill 20:24:53 2019 -0700
 
Uuendatud README.md
 
diff --git a / LUGEGE.md b / LUGEMINE.md
indeks 9daeafb… 180cf83 100644
--- a / LUGEGE.md
+++ b / LUGEGE.md
@@ -1 +1 @@
-test
+test2

Vanemate kohustuste sildistamine

Samuti võite minna tagasi ja märkida vanema pühenduse. Vaatame palke:

$ git log - oneline
106e0bb (HEAD -> master, silt: v1.0.4) Lisatud funktsioon 2
161c6e5 lisatud funktsioon 1
34671d8 (silt: v1.0.3, silt: v1.0.2, silt: v1.0.1, silt: Release-20190401) Uuendatud README.md
afe9b0c (päritolu / kapten) Init
$

Märkasime, et pühendunud 161c6e5-l pole seotud silti. Saame selle kohustuse märgistada järgmiselt:

$ git silt -a Release-20190402 161c6e5

See avab kommentaariakna. Pärast kommentaari sisestamist näeme, et meil on kohustus nüüd märgitud:

$ git silt -n1
Väljaanne-20190401 Uuendatud README.md
Release-20190402 Lisati vanemale pühendusele silt
v1.0.1 Uuendatud README.md
v1.0.2 Minu versioon 1.0.2
v1.0.3 Minu versioon 1.0.3
v1.0.4 Lisatud funktsioon 2

Siltide eemaldamine

Oletame, et otsustate, et te ei soovi „Release-“ silte, kuna need on segased. Kõigepealt leiate kõik „Release-“ sildid:

$ git tag -l vabastamine *
Väljaanne-20190401
Väljaanne-20190402

Nüüd saate need eemaldada valikuga "-d":

$ git tag -d Release-20190401
Kustutatud silt „Release-20190401” (oli 34671d8)
$ git tag -d Release-20190402
Kustutatud silt „Release-20190402” (oli 6ee37bc)

Kui kontrollime silte uuesti, peaksime nägema ainult silte, mis algavad tähega “v”:

$ git silt -n1
v1.0.1 Uuendatud README.md
v1.0.2 Minu versioon 1.0.2
v1.0.3 Minu versioon 1.0.3
v1.0.4 Lisatud funktsioon 2

Siltide ülekirjutamine

Oletame, et meil on olukord, kus “v1.0.4-tolline silt on funktsioonil 2:

$ git log - oneline
d7b18a4 (HEAD -> master) Lisatud funktsioon 3
106e0bb (silt: v1.0.4) Lisatud funktsioon 2
161c6e5 Lisatud funktsioon 1
34671d8 (silt: v1.0.3, silt: v1.0.2, silt: v1.0.1) Uuendatud README.md
afe9b0c (päritolu / kapten) Init

Kuid me tahame silti “v1.0.4 ”osutab funktsioonile 3. Kui proovime seda ümber märgistada, kuvatakse see viga:

$ git silt v1.0.4 d7b18a4
saatuslik: silt 'v1.0.4 'on juba olemas

Sellest probleemist saame üle valiku „-f” abil:

$ git silt -f v1.0.4 d7b18a4
Uuendatud silt 'v1.0.4 '(oli 106e0bb)

Kui kontrollime logi uuesti, näeme, et silt on liikunud soovitud pühendusse:

$ git log - oneline
d7b18a4 (HEAD -> master, silt: v1.0.4) Lisatud funktsioon 3
106e0bb Lisatud funktsioon 2
161c6e5 lisatud funktsioon 1
34671d8 (silt: v1.0.3, silt: v1.0.2, silt: v1.0.1) Uuendatud README.md
afe9b0c (päritolu / kapten) Init

Teise võimalusena võite ka sildi kustutada ja selle uuesti uuele lisamisele lisada.

Sildide jagamine teiste kasutajatega

Kui lükkate koodi kaughoidlasse, ei lükata Giti silte automaatselt. Kui soovite oma silte teiste kasutajatega jagada, peate neid ainult tõukama.

Sildid saab lükata järgmiselt:

$ git push originaal v1.0.4
Objektide loendamine: 12, tehtud.
Delta tihendamine kuni 4 niidi abil.
Objektide tihendamine: 100% (4/4), valmis.
Objektide kirjutamine: 100% (12/12), 902 baiti | 150.00 KiB / s, tehtud.
Kokku 12 (delta 0), taaskasutatud 0 (delta 0)
To / Kasutajad / zakh / _work / LearnGIT / git_tagging / remote / project_mayhem
* [uus silt] v1.0.4 -> v1.0.4

Kui teised kasutajad kloonivad kaughoidlat, näevad nad ainult silti, mis lükati („v1.0.4 ”(antud juhul).

Filiaalide vs siltide kasutamine

Filiaalid on kasulikud uute funktsioonide või katsetamise jaoks. Üldiselt soovite hargneda siis, kui on vaja teha tulevast tööd ja see töö häirib teie praegust arengut. Teisest küljest on silte kasulikum hetktõmmistena. Nende abil peaksite meeles pidama konkreetseid asju, mida olete juba teinud.

Kokkuvõtteks

Git-märgend on alakasutatud funktsioon, mis võib olla suurepärane viis väljaannete ja erifunktsioonide jälgimiseks. Kui seadistate siltide ümber häid tavasid, võib see aidata teil hõlpsalt suhelda oma arendusmeeskonnaga ja lihtsustada arendusprotsesse.

Edasine uuring:

  • https: // git-scm.com / book / en / v2 / Git-Basics-sildistamine
  • https: // tarkvaratehnika.virnavahetus.com / questions / 165725 / git-hargnemise ja märgistamise parimad tavad
  • https: // www.atlasslane.com / git / tutorials / inspecting-a-repository / git-tag
  • https: // et.vikipeedia.org / wiki / Tarkvara_versioonimine
  • https: // www.tehnopeedia.com / definition / 25977 / software-versioning
Parimad mängude jaoks mõeldud Linuxi distrod 2021. aastal
Linuxi operatsioonisüsteem on oma algsest, lihtsast, serveripõhisest välimusest kaugele jõudnud. See operatsioonisüsteem on viimastel aastatel tohutul...
Kuidas Linuxis oma mänguseanssi jäädvustada ja voogesitada
Varem peeti mängude mängimist ainult hobiks, kuid aja jooksul kasvas mängutööstus tehnoloogia ja mängijate arvu osas tohutult. Mängupublik on veebimän...
Parimad mängud, mida saab mängida käte jälgimisega
Oculus Quest tutvustas hiljuti suurepärast ideed käsitsi jälgimisest ilma kontrolleriteta. Üha suurema hulga mängude ja tegevustega, mis toetavad kas ...