Munka az egyesítéssel és az ág törlésével
Először hozzunk létre egy főágat, tegyünk néhány kötelezettségvállalást, hozzunk létre egy új ágat, amelyet úgynevezett feature -ként adunk hozzá, és adjunk hozzá néhány kötelezettségvállalást, majd térjünk vissza a masterhez és kövessük el újra. Íme a parancsok:
$mkdiraz én játékom
$CDaz én játékom
$git init
$kidobta „1. tervezési döntés: ötletgazda” >>design.txt
$git hozzá -NAK NEK
$git elkötelezni -m 'C0: Elindult projekt'
$kidobta „Tervezési döntés 2: kód írása” >>design.txt
$git hozzá -NAK NEK
$git elkötelezni -m „C1: Beküldött kód”
$git ágjellemzők
$git pénztárjellemzők
$kidobta '1. funkció hozzáadása' >>feature.txt
$git hozzá -NAK NEK
$git elkötelezni -m 'C2: 1. szolgáltatás'
$kidobta '2. funkció hozzáadása' >>feature.txt
$git hozzá -NAK NEK
$git elkötelezni -m 'C3: 2. szolgáltatás'
$git pénztárfő-
$kidobta 'A mester újra módosítása' >>design.txt
$git hozzá -NAK NEK
$git elkötelezni -m 'C4: Mester módosítva'
A fenti parancsok a következő helyzetet hozták létre:
Ellenőrizheti a két ág történetét, hogy megtudja, milyen kötelezettségeik vannak:
$git állapot
Ágmesterről
nincs mit elkötelezni, a könyvtár tiszta
$git napló --egy sor
2031b83 C4: Mester módosítva
1c0b64c C1: Elküldött kód
$git pénztárjellemzők
Átkapcsolt ágra'jellemzők'
$git napló --egy sor
93d220b C3: Funkció2
ad6ddb9 C2: Funkció1
1c0b64c C1: Elküldött kód
ec0fb48 C0: Elindított projekt
Tegyük fel, hogy a funkcióágazat összes módosítását a mesterágazatunkba kívánja vinni. A folyamatot az egyesítés céljától kell elkezdenie. Mivel be akarunk olvadni a mesterágba, onnan kell kezdeményeznie a folyamatot. Nézzük tehát a mesterágat:
$git pénztárfő-Átkapcsolt ágra'fő'
$git állapot
Ágmesterről
nincs mit elkötelezni, a könyvtár tiszta
Most hozzuk létre az egyesítést:
$git egyesüljellemzők
Ha nincsenek ütközések az összevonásban, akkor megnyit egy szövegszerkesztőt a megjegyzésekkel:
Fiók egyesítése'jellemzők'# Kérjük, írjon be egy véglegesítési üzenetet, hogy elmagyarázza, miért szükséges ez az egyesítés,
# különösen, ha egy frissített upstream -t egyesít egy témaágba.
#
# A '#' betűvel kezdődő sorokat figyelmen kívül hagyja, és az üres üzenet megszakad
# az elkötelezettség.
Módosíthatja a megjegyzéseket, vagy elfogadhatja az alapértelmezett megjegyzéseket. Az egyesítési kimenetnek a következő eredményeket kell mutatnia:
Egyesítés, amelyet a'rekurzív'stratégia.feature.txt| 2++
1 fájltmegváltozott,2beillesztések(+)
létrehozási mód100644feature.txt
Az egyesítés után a következő feltételek állnak fenn:
Ha ellenőrzi a naplókat, a következőket találja:
$git állapotÁgmesterről
nincs mit elkötelezni, a könyvtár tiszta
$git napló --egy sor
46539a3 C5: Fiók egyesítése'jellemzők'
2031b83 C4: Mester módosítva
93d220b C3: Funkció2
ad6ddb9 C2: Funkció1
1c0b64c C1: Elküldött kód
ec0fb48 C0: Elindított projekt
Sikeresen egyesítette a módosításokat. A szolgáltatáságazat azonban továbbra is jelen van.
$git ág -nak nekjellemzők
*fő-
A következő paranccsal törölheti:
$git ág -djellemzőkHa most ellenőrzi, csak a főágat láthatja:
$git ág -nak nek*fő-
Következtetés
Győződjön meg róla, hogy rendszeresen ellenőrzi a nem használt ágakat, és törli azokat. Szeretné tisztán tartani a tárházat, hogy könnyebben navigáljon és megértse.