Giti silt selgitatud: kuidas Gitis silte loetleda, luua, eemaldada ja näidata

Sildistamine võimaldab arendajatel märkida olulised kontrollpunktid oma projekti väljatöötamise käigus. Näiteks saab tarkvara väljalaske versioone sildistada. (Nt: v1.3.2) See võimaldab teil sisuliselt anda spetsiaalse nime (sildi).

Kõigi loodud siltide tähestikulises järjekorras vaatamiseks toimige järgmiselt.

git tag

Märgendi kohta lisateabe saamiseks toimige järgmiselt.

git show v1.4

Märgendeid on kahte tüüpi:

Annoteeritud

git tag -a v1.2 -m "my version 1.4"

Kerge

git tag v1.2

Need erinevad ladustamise viisi poolest.

Need loovad sildid teie praegusele pühendusele.

Kui soovite märgistada eelmise kohustuse, määrake täitmise ID, mille soovite märgistada:

git tag -a v1.2 9fceb02

Siltide nimesid võidakse sidumiste ID-de asemel kasutada kaugrepotööde tegemise kontrollimisel ja edastamisel.

Rohkem informatsiooni:

  • Giti dokumentatsioon: dokumentatsioon
  • Peatükk Git sildistamine: raamat

Kõiki projekti saadaolevaid silte saate loetleda git tagkäsuga (märkige, et need ilmuksid tähestikulises järjekorras):

$ git tag v1.0 v2.0 v3.0

Selline siltide loendamise viis sobib suurepäraselt väikeste projektide jaoks, kuid suuremates projektides võib olla sadu silte, mistõttu peate võib-olla ajaloo olulise punkti otsimisel need filtreerima. Leiate silte sisaldab konkreetseid märke lisades -l, et git tagkäsk:

$ git tag -l "v2.0*" v2.0.1 v2.0.2 v2.0.3 v2.0.4

Looge silt

Saate luua kahte tüüpi silte: märkustega ja kerged. Esimesed on GIT-i andmebaasis konkureerivad objektid: need on kontrollsummad, nõuavad sõnumit (nagu kohustused) ja salvestavad muid olulisi andmeid, nagu nimi, e-posti aadress ja kuupäev. Teisest küljest ei vaja kergekaalulised sildid sõnumit ega talleta muid andmeid, mis toimivad täpselt projekti konkreetse punktina.

Looge kommenteeritud silt

Et luua anotated tag, lisada -a tagname -m "tag message", et git tagkäsk:

$ git tag -a v4.0 -m "release version 4.0" $ git tag v1.0 v2.0 v3.0 v4.0

Nagu näete, -atäpsustab, et loote märkustega sildi, järgneb sildi nimi ja lõpuks -mGiti andmebaasi salvestatav silt.

Looge kerge silt

Kerged sildid sisaldavad ainult täitmise kontrollsummat (muud teavet ei salvestata). Selle loomiseks käivitage lihtsalt git tagkäsk ilma muude suvanditeta (nime lõpus olevaid -lw märke kasutatakse kergete siltide tähistamiseks, kuid saate need märkida oma äranägemise järgi):

$ git tag v4.1-lw $ git tag v1.0 v2.0 v3.0 v4.0 v4.1-lw

Seekord ei määranud te sõnumit ega muid asjakohaseid andmeid, nii et silt sisaldab ainult viidatud pühenduse kontrollsummat.

Kuva märgendi andmed

git showSildis salvestatud andmete vaatamiseks saate käsu käivitada . Märkustega siltide puhul näete märgendi andmeid ja kohustuse andmeid:

$ git show v4.0 tag v4.0 Tagger: John Cash  Date: Mon Sat 28 15:00:25 2017 -0700 release version 4.0 commit da43a5fss745av88d47839247990022a98419093 Author: John Cash  Date: Fri Feb 20 20:30:05 2015 -0700 finished details

Kui teie vaadatav silt on kerge silt, näete ainult viidatud kohustuse andmeid:

$ git show v1.4-lw commit da43a5f7389adcb9201ab0a289c389ed022a910b Author: John Cash  Date: Fri Feb 20 20:30:05 2015 -0700 finished details

Vanade kohustuste sildistamine

Samuti saate varasemaid kohustusi märgistada, kasutades git-märgendit. Selleks peate käsureal määrama kohustuse kontrollsumma (või vähemalt selle osa).

Esmalt käivitage vajalik logi kontrollsumma saamiseks git log:

$ git log --pretty=oneline ac2998acf289102dba00823821bee04276aad9ca added products section d09034bdea0097726fd8383c0393faa0072829a7 refactorization a029ac120245ab012bed1ca771349eb9cca01c0b modified styles da43a5f7389adcb9201ab0a289c389ed022a910b finished details 0adb03ca013901c1e02174924486a08cea9293a2 small fix in search textarea styles

Kui teil on vajalik kontrollsumma, lisage see sildi loomise rea lõppu:

$ git tag -a v3.5 a029ac

Näete, et silt on õigesti lisatud git tag.

$ git tag v1.0 v2.0 v3.0 v3.5 v4.0 v4.1-lw

Lükake silte

Git ei lükka silte vaikimisi, kui käivitate käsu git push. Niisiis, kui soovite sildi edukalt serverisse lükata, peate git push originkäskima:

$ git push origin v4.0 Counting objects: 14, done. Delta compression using up to 8 threads. Compressing objects: 100% (16/16), done. Writing objects: 100% (18/18), 3.15 KiB | 0 bytes/s, done. Total 18 (delta 4), reused 0 (delta 0) To [email protected]:jcash/gitmanual.git * [new tag] v4.0 -> v4.0

Samuti saate käsuga --tagslisada mitu silti korraga git push origin:

$ git push origin --tags Counting objects: 1, done. Writing objects: 100% (1/1), 160 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) To [email protected]:jcash/gitmanual.git * [new tag] v4.0 -> v4.0 * [new tag] v4.1-lw -> v4.1-lw

Siltide kontrollimine

Saate kasutada git checkoutsildi väljamaksmist nagu tavaliselt. Kuid peate meeles pidama, et see põhjustaks HEAD- seisundi eraldumist .

$ git checkout v0.0.3 Note: checking out 'v0.0.3'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout.

Sildi kustutamine

Võib juhtuda, et soovite kustutada kindla sildi. Sellistes olukordades on väga kasulik käsk:

$ git tag --delete v0.0.2 $ git tag v0.0.1 v0.0.3 v0.0.4

Rohkem informatsiooni

  • Git Pro - sildistamise põhitõed
  • Git Pro - dokumentatsioon
  • Git kuidas
  • Giti näpunäide: sildid
  • Sildi loomine

Allikad

Giti dokumentatsioon: sildid