Git vertaa kahta haaraa

Git Compare Two Branches



Lähes kaikissa versionhallintajärjestelmissä on haarautumisvaihtoehtoja. Mutta Git tunnetaan nopeista haarautumisominaisuuksistaan. Git -oksat ovat kevyitä. Joten haarautumisesta aiheutuvat suoritusrangaistukset ovat vähäiset ja kehitystiimejä kannustetaan haarautumaan ja sulautumaan mahdollisimman paljon. Mutta kun työskentelet useiden alojen kanssa, on tärkeää pystyä vertaamaan ja vastakkain eroja. Tässä opetusohjelmassa käymme läpi työnkulun nähdäksemme, miten voimme vertailla eri aloja ja sitoumuksia. Määritetään ensin seuraava tilanne:

C00 => C01 => C03 => C06 (isäntä)









C02 => C04 => C05 (kehitys)



Seuraavat vaiheet tehtiin:





  • C00: Lisätty hello_world.py (päähaara)
  • - Kehityshaara on luotu
  • C01: Muokattu hello_world.py lisäämään toinen hei (päähaara)
  • C02: Muutettu hello_world.py lisäämään kehityshaara sanoo Hei (kehityshaara)
  • C03: lisätty readme.txt (päähaara)
  • C04: Muokattu hello_world.py lisäämään kehityshaara sanoo Hei taas (kehityshaara)
  • C05: Lisätty info.txt (kehityshaara)
  • C06: Muokattu readme.txt lisäämään toinen rivi (päähaara)

Kaikkien sitoumusten jälkeen päähaarassa on seuraavat tiedostot:

hello_world.py
readme.txt



Ja 'kehitys' -haarassa on seuraavat tiedostot:

hello_world.py
info.txt


Vertaamalla kahden haaran päätä

Voit vertailla sivuliikkeiden nimiä kahden haaran päätä:

$git eromestari..kehitys

ero --mennäkohteeseen/hello_world.py b/hello_world.py
indeksi e27f806..3899ed3100644
---kohteeseen/hello_world.py
+++ b/hello_world.py
@@-2,7+2,7 @@

def pää():
Tulosta('Ensimmäinen hei!')
- Tulosta('Toinen hei!')
-
+ tulosta('Kehitysosasto sanoo hei')
+ tulosta('Kehitysosasto sanoo hei taas')
jos__nimi__ =='__main__':
tärkein()
ero --mennäkohteeseen/info.txt b/info.txt
Uusitiedosto-tilaan100644
indeksi 0000000..0ab52fd
--- /dev/tyhjä
+++ b/info.txt
@@-0,0+1 @@
+Uutta tietoa
ero --mennäkohteeseen/readme.txt b/readme.txt
poistettutiedosto-tilaan100644
indeksi e29c296..0000000
---kohteeseen/readme.txt
+++/dev/tyhjä
@@-1,2+0,0 @@
-1Readme.txt -tiedoston ensimmäinen rivi
-2Readme.txt -tiedoston toinen rivi

Dif -komento tarkastelee muutoksia rekursiivisesti. Se on suorittanut seuraavat erot:

diff –git a/hello_world.py b/hello_world.py
diff –git a/info.txt b/info.txt
diff –git a/readme.txt b/readme.txt

Tässä 'a' tarkoittaa 'päähaaraa' ja 'b' tarkoittaa kehityshaaraa. Ensimmäiselle parametrille merkitään aina a ja toiselle parametri b. /Dev /null tarkoittaa, että haaralla ei ole tiedostoa.


Sitoumusten vertailu

Esimerkissämme 'päällikkö' -haarassa on seuraavat sitoumukset:

$git -tila
Haaran mestari
mitään sitoutumista, työhakemisto puhdas

$git loki --yksi linja
caa0ddd C06: Muokattu readme.txt lisäämään toinen rivi(päähaara)
efaba94 C03: Lisätty readme.txt(päähaara)
ee60eac C01: Muokattu hello_world.py lisäämään toinen hei(päähaara)
22b4bf9 C00: Lisätty hello_world.py(päähaara)

Kehitysalalla on seuraavat sitoumukset:

$git -tila
Haaran kehittämisestä
mitään sitoutumista, työhakemisto puhdas

$git loki --yksi linja
df3a4ee C05: Lisätty info.txt(kehityshaara)
0f0abb8 C04: Muutettu hello_world.py lisäämään kehityshaara sanoo Hei taas(kehityshaara)
3f611a0 C02: Muokattu hello_world.py lisäämään kehityshaara sanoo Hei(kehityshaara)
22b4bf9 C00: Lisätty hello_world.py(päähaara)

Oletetaan, että haluamme verrata hello_world.py C01- ja C02 -sitoumuksiin. Voit vertailla hajautuksia:

$git eroee60eac: hello_world.py 3f611a0: hello_world.py

ero --mennäkohteeseen/ee60eac: hello_world.py b/3f611a0: hello_world.py
indeksi e27f806..72a178d100644
---kohteeseen/ee60eac: hello_world.py
+++ b/3f611a0: hello_world.py
@@-2,7+2,7 @@

def pää():
Tulosta('Ensimmäinen hei!')
- Tulosta('Toinen hei!')
+ tulosta('Kehitysosasto sanoo hei')

jos__nimi__ =='__main__':
tärkein()

Voit käyttää samaa periaatetta myös saman toimialan sitoumusten vertaamiseen.


Visuaaliset yhdistämistyökalut

Tekstipohjaisten vertailujen tarkastelu voi olla vaikeaa. Jos asennat Gitin difftool visuaalisen yhdistämissovelluksen kaltaisella DiffMerge tai Verraton , näet erot paremmin.

Jatko-opinnot:

Viitteet: