Git

Hogyan használjuk a Git címkéket a fejlesztési folyamatok javításához

Hogyan használjuk a Git címkéket a fejlesztési folyamatok javításához
A legtöbb fejlesztői csapat számára a Git a verzióellenőrzés alapvető eszközévé vált. A Git népszerűségének egyik nagy oka az ágak létrehozásának zökkenőmentes képessége. A fejlesztői csapatok fiókokat használhatnak sajátos funkciók vagy kiadások kidolgozásához. A Git címkéje azonban gyakran figyelmen kívül hagyott parancs, amely segítséget nyújthat a csapatoknak a munkafolyamatok egyszerűsítésében. Ebben a cikkben elmélyülünk a Git címkézésének mikéntjében, hogyan és miértiben.

Mik azok a Git címkék?

A Git-címkék bizonyos elkövetésekre mutatnak. Olyanok, mint a könyvjelzők. Címkék létrehozásához bármilyen megállapodást használhat. De a legtöbb fejlesztői csapat olyan verziószámokat használ, mint a v1.0.1. vagy v.1.1-a1 címkék létrehozásához.

Címkék létrehozása

Kétféle címke van a Git-ben:

Könnyű címkék

A könnyű címkék könnyen létrehozhatók. Egyszerűen használhatja a következő parancssort:

$ git címke

Ezeket a címkéket a .a működő adattár git mappája.

Hozzunk létre néhány könnyű Git-címkét:

$ git tag v1.0.1
$ git címke Release-20190401

Az első esetben a „v1.0.1 ”. A második esetben létrehoztunk egy „Release-20190401” címkét. A könnyű címkék nem adnak vissza értéket. Fontos kiemelni azt is, hogy mivel ez a két címke egymás után készült, ugyanazon elkötelezettségre mutatnak.

Megjegyzésekkel ellátott címkék

A kommentált címkékkel további információkat tárolhat. Az „-a” opcióval létrehozhatja ezeket a címkéket:

$ git tag -a

Próbáljunk meg létrehozni egy kommentált címkét:

git tag -a v1.0.2

Felugrik egy szöveges ablak, ahol megadhat egy megjegyzést, amelynek így kell kinéznie:

#
# Írjon üzenetet a címkéhez:
# V1.0.2
# A '#' betűvel kezdődő vonalakat figyelmen kívül hagyja.

Írjon be egy megjegyzést és mentse el. Tehát, most a címke v1.0.2 menti egy megjegyzéssel. Alternatív megoldásként közvetlenül megadhatja a megjegyzést a parancssorban, így:

git tag -a v1.0.3 -m "Saját verzió 1.0.3 "

Címkék keresése a kódban

Most, hogy létrehoztunk néhány címkét, nézzük meg, mi van:

$ git tag -l
Release-20190401
v1.0.1
v1.0.2
v1.0.3

Láthatjuk, hogy az összes címkénk ábécé sorrendben jelenik meg. A „-n használatával további információkat kaphat a címkékről" hol a megjegyzések sorainak számát jelenti.

$ git tag -n1
Release-20190401 Frissítve README.md
v1.0.1 Frissítve a README.md
v1.0.2 Saját verzió 1.0.2
v1.0.3 Saját verzió 1.0.3

Itt észrevehet különbséget a könnyű és az annotált címkék között. Ebben a példában a „Release-20190401” és a „v1.0.1 ”könnyű címkék. A „v1.0.2 ”és„ v1.0.3 ”feliratozott címkék. Mindegyikük ugyanarra az elkötelezettségre mutat (34671 kötelezettségvállalás):

$ git napló
elkövetni 106e0bb02a58ec3e818e9acdf3bb19a9247a0e84 (HEAD -> master, tag: v1.0.4)
Szerző: Zak H
Dátum: szombat, április 6. 21:06:02, 2019 -0700
 
2. funkció hozzáadva
 
elkövetni 161c6e564e79624623ed767397a98105426d0ec4
Szerző: Zak H
Dátum: szombat, április 6. 21:05:25, 2019 -0700
 
Hozzáadott 1. funkció
 
elkövetni 34671d824f9b9951e57f867998cb3c02a11c4805 (tag: v1.0.3. címke: v1.0.2,
tag: v1.0.1, tag: Release-20190401)
Szerző: Zak H
Dátum: szombat, szombat 6, 20:24:53, 2019 -0700
 
Frissítve a README.md
 
elkötelez afe9b0c7c9fbce3c3d585afe67358a5eec226e2c (eredet / master)
Szerző: Zak H
Dátum: szombat, április 6. 20:23:55, 2019 -0700
 
Benne

A könnyű címkék azonban megmutatják az elkötelezettség megjegyzéseit, amely a „Frissített README.md ”, míg a kommentált címkék az egyes megjegyzéseket mutatják, amelyeket a címke létrehozása során hozzáadtak.

Tipp: Ha meg akarja találni egy adott címke végrehajtási számát, használhatja a „git show” parancsot:

$ git show v1.0.3
címke v1.0.3
Címkéző: Zak H
Dátum: szombat, április 6. 20:43:30, 2019 -0700
 
Saját verzió 1.0.3
 
elkövetni 34671d824f9b9951e57f867998cb3c02a11c4805 (tag: v1.0.3. címke: v1.0.2, címke:
v1.0.1, tag: Release-20190401)
Szerző: Zak H
Dátum: szombat, szombat 6, 20:24:53, 2019 -0700
 
Frissítve a README.md
 
diff --git a / README.md b / README.md
index 9daeafb… 180cf83 100644
--- a / README.md
+++ b / README.md
@@ -1 +1 @@
-teszt
+teszt2

Régebbi vállalások címkézése

Visszaléphet és megcímkézhet egy régebbi elkötelezettséget is. Nézzük meg a naplókat:

$ git log - online
106e0bb (HEAD -> master, tag: v1.0.4) Hozzáadott 2. funkció
161c6e5 Hozzáadott 1. funkció
34671d8 (címke: v1.0.3. címke: v1.0.2. címke: v1.0.1, tag: Release-20190401) Frissítve README.md
afe9b0c (eredet / mester) Init
$

Észrevesszük, hogy a kötelezettség 161c6e5 nem rendelkezik társított címkével. Ezt az elkötelezettséget így címkézhetjük:

$ git tag -a Release-20190402 161c6e5

Felugrik a megjegyzés ablak. Miután megadtuk a megjegyzést, láthatjuk, hogy most már meg van jelölve az elkövetés:

$ git tag -n1
Release-20190401 Frissítve README.md
Release-20190402 Címke hozzáadva egy régebbi elkötelezettséghez
v1.0.1 Frissítve a README.md
v1.0.2 Saját verzió 1.0.2
v1.0.3 Saját verzió 1.0.3
v1.0.4 Hozzáadott 2. funkció

Címkék eltávolítása

Tegyük fel, hogy úgy dönt, hogy nem akarja a „Release-” címkéket, mivel azok zavarosak. Először megtalálhatja az összes „Release-” címkét:

$ git tag -l kiadás *
Release-20190401
Release-20190402

Most eltávolíthatja őket a „-d” opcióval:

$ git tag -d Release-20190401
Törölt 'Release-20190401' címke (volt 34671d8)
$ git tag -d Release-20190402
Törölt 'Release-20190402' címke (volt 6ee37bc)

Ha újra ellenőrizzük a címkéket, akkor csak azokat a címkéket kell látnunk, amelyek „v” betűvel kezdődnek:

$ git tag -n1
v1.0.1 Frissítve a README.md
v1.0.2 Saját verzió 1.0.2
v1.0.3 Saját verzió 1.0.3
v1.0.4 Hozzáadott 2. funkció

Címkék felülírása

Tegyük fel, hogy van olyan helyzetünk, amikor a „v1.0.A 4 hüvelykes címke a 2. szolgáltatáshoz fordul:

$ git log - online
d7b18a4 (HEAD -> master) Hozzáadta a 3. szolgáltatást
106e0bb (tag: v1.0.4) Hozzáadott 2. funkció
161c6e5 Hozzáadott 1. funkció
34671d8 (címke: v1.0.3. címke: v1.0.2. címke: v1.0.1) Frissítve a README.md
afe9b0c (eredet / mester) Init

De a „v1.0.4 ”a 3. jellemzőre mutat. Ha megpróbáljuk új címkézni, akkor ezt a hibát kapjuk:

$ git tag v1.0.4 d7b18a4
végzetes: tag 'v1.0.4 'már létezik

Ezt a problémát a „-f” opcióval tudjuk leküzdeni:

$ git tag -f v1.0.4 d7b18a4
Frissített 'v1 címke.0.4 '(106e0bb volt)

Ha újra ellenőrizzük a naplót, látjuk, hogy a címke átment a kívánt elkötelezettségre:

$ git log - online
d7b18a4 (HEAD -> master, tag: v1.0.4) Hozzáadott 3. funkció
106e0bb hozzáadva a 2. szolgáltatáshoz
161c6e5 Hozzáadott 1. funkció
34671d8 (címke: v1.0.3. címke: v1.0.2. címke: v1.0.1) Frissítve a README.md
afe9b0c (eredet / mester) Init

Alternatív megoldásként törölhet egy címkét is, és újból hozzáadhatja egy új elkötelezettséghez.

Címkék megosztása más felhasználókkal

Amikor a kódot a távoli adattárba tolja, a Git-címkék nem kerülnek automatikusan letolásra. Ha meg akarja osztani a címkéit más felhasználókkal, akkor kizárólag azokat kell megadnia.

A címkék így tolhatók:

$ git push origó v1.0.4
Tárgyak számlálása: 12, kész.
Delta tömörítés akár 4 szál használatával.
Tárgyak tömörítése: 100% (4/4), kész.
Objektumok írása: 100% (12/12), 902 bájt | 150.00 KiB / s, kész.
Összesen 12 (delta 0), újrafelhasználva 0 (delta 0)
Címzett / Felhasználók / zakh / _work / LearnGIT / git_tagging / remote / project_mayhem
* [új címke] v1.0.4 -> v1.0.4

Ha más felhasználók klónozzák a távoli adattárat, akkor csak a letiltott címkét látják („v1.0.4 ”ebben az esetben).

Ágak és címkék használata

Az ágak hasznosak az új funkciókhoz vagy a kísérlethez. Általában akkor akar elágazni, ha jövőbeli munkát kell elvégezni, és a munka megzavarja a jelenlegi fejlődését. Másrészt a címkék hasznosabbak pillanatképként. Használnia kell őket arra, hogy emlékezzen bizonyos dolgokra, amelyeket már megtett.

Következtetésképpen

A Git tag egy alul kihasznált funkció, amely nagyszerű módot kínál a kiadások és a speciális szolgáltatások nyomon követésére. Ha jó gyakorlatokat állít be a címkék köré, az könnyebben kommunikálhat a fejlesztői csapattal és egyszerűsítheti a fejlesztési folyamatokat.

A további vizsgálat:

  • https: // git-scm.com / book / en / v2 / Git-Basics-Tagging
  • https: // softwareengineering.veremcsere.com / questions / 165725 / git-branching-and-tagging-best-practice
  • https: // www.atlassian.com / git / tutorials / inspecting-a-repository / git-tag
  • https: // en.wikipédia.org / wiki / Software_versioning
  • https: // www.techopédia.com / definition / 25977 / software-versioning
Az AutoKey használata a Linux játékok automatizálásához
Az AutoKey egy asztali automatizáló segédprogram Linux és X11 rendszerekhez, Python 3, GTK és Qt programozással. A parancsfájlok és a MACRO funkcióina...
Az FPS-számláló megjelenítése a Linux-játékokban
A Linux játék komoly lendületet kapott, amikor a Valve 2012-ben bejelentette a Linux támogatását a Steam kliensnek és játékaiknak. Azóta sok AAA és in...
Sid Meier Civilization VI letöltése és lejátszása Linuxon
Bevezetés a játékba A Civilization 6 egy modern felvétel a Age of Empires játékok sorozatában bevezetett klasszikus koncepcióra. Az ötlet meglehetősen...