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
- Kommenteeritud sildid
Kerged sildid
Kergekaalulisi silte on lihtne luua. Võite kasutada lihtsalt järgmist käsurida:
$ git siltNeed 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 -aProovime luua kommenteeritud sildi:
git tag -a v1.0.2See 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 -lVä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
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 logipü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.3silt 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 - oneline106e0bb (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 161c6e5See avab kommentaariakna. Pärast kommentaari sisestamist näeme, et meil on kohustus nüüd märgitud:
$ git silt -n1Vä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-20190401Kustutatud 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 -n1v1.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 - onelined7b18a4 (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 d7b18a4saatuslik: silt 'v1.0.4 'on juba olemas
Sellest probleemist saame üle valiku „-f” abil:
$ git silt -f v1.0.4 d7b18a4Uuendatud silt 'v1.0.4 '(oli 106e0bb)
Kui kontrollime logi uuesti, näeme, et silt on liikunud soovitud pühendusse:
$ git log - onelined7b18a4 (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.4Objektide 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