Git

Git Usporedite dvije grane

Git Usporedite dvije grane

Gotovo svi sustavi kontrole verzija imaju mogućnosti razgranavanja. No, Git je poznat po svojim brzim mogućnostima grananja. Git grane su lagane. Tako su kazne za izvedbu grananja minimalne, a razvojni timovi potiču se da se što više granaju i spajaju. Ali kada radite s više grana, važno je usporediti i usporediti razlike. U ovom uputstvu proći ćemo kroz tijek rada kako bismo vidjeli kako možemo usporediti razne grane i predaje.Postavimo prvo sljedeću situaciju:

C00 => C01 => C03 => C06 (glavni)

      \

       C02 => C04 => C05 (razvoj)

Poduzeti su sljedeći koraci:

Nakon svih urezivanja, grana 'master' ima sljedeće datoteke:

Pozdrav svijete.py
Pročitaj me.txt

A grana 'razvoj' ima sljedeće datoteke:

Pozdrav svijete.py
info.txt


Uspoređujući glave dviju grana

Ime grana možete koristiti za usporedbu glava dviju grana:

$ git diff master ... razvoj
diff --git a / hello_world.py b / hello_world.py
indeks e27f806… 3899ed3 100644
--- a / hello_world.py
+++ b / hello_world.py
@@ -2,7 +2,7 @@
def glavni ():
print ("Prvo zdravo!")
- print ("Drugi pozdrav!")
-
+ print ("Podružnica za razvoj pozdravlja")
+ print ("Podružnica za razvoj kaže" Pozdrav opet ")
ako je __name__ == "__glavno__":
glavni()
diff --git a / info.txt b / info.txt
novi način datoteke 100644
indeks 0000000 ... 0ab52fd
--- / dev / null
+++ b / info.txt
@@ -0,0 +1 @@
+Nove informacije
diff --git a / readme.txt b / readme.txt
način brisanja datoteka 100644
indeks e29c296 ... 0000000
--- a / readme.txt
+++ / dev / null
@@ -1,2 +0,0 @@
-1 Prvi redak readmea.txt
-2 Drugi redak readmea.txt

Naredba diff rekurzivno gleda promjene. Pokrenuo je sljedeće razlike:

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

Ovdje 'a' znači 'glavna' grana, a 'b' je razvojna grana. 'A' se uvijek dodjeljuje prvom parametru, a 'b' drugom parametru.  / Dev / null znači da grana nema datoteku.


Usporedba između predavanja

U našem primjeru, grana 'master' ima sljedeće obveze:

$ git status
Na majstoru grane
ništa za obvezivanje, radni direktorij čist
$ git log --oneline
caa0ddd C06: Izmijenjeni readme.txt za dodavanje drugog retka (glavna grana)
efaba94 C03: Dodan readme.txt (glavna grana)
ee60eac C01: Izmijenjeni hello_world.py za dodavanje drugog zdrava (glavna grana)
22b4bf9 C00: Dodan hello_world.py (glavna grana)

Razvojna grana ima sljedeće obveze:

$ git status
O razvoju grana
ništa za obvezivanje, radni direktorij čist
$ git log --oneline
df3a4ee C05: Dodane informacije.txt (razvojna grana)
0f0abb8 C04: Izmijenjeni hello_world.py za dodavanje razvojne grane kaže opet zdravo (razvojna grana)
3f611a0 C02: Izmijenjeni hello_world.py za dodavanje razvojne grane kaže Hello (razvojna grana)
22b4bf9 C00: Dodan hello_world.py (glavna grana)

Pretpostavimo da želimo usporediti hello_world.py za obveze C01 i C02. Pomoću hashova možete usporediti:

$ git diff ee60eac: hello_world.py 3f611a0: hello_world.py
diff --git a / ee60eac: hello_world.py b / 3f611a0: hello_world.py
indeks e27f806… 72a178d 100644
--- a / ee60eac: hello_world.py
+++ b / 3f611a0: hello_world.py
@@ -2,7 +2,7 @@
def glavni ():
print ("Prvo zdravo!")
- print ("Drugi pozdrav!")
+ print ("Podružnica za razvoj pozdravlja")
ako je __name__ == "__glavno__":
glavni()

Možete koristiti isti princip za usporedbu obveza unutar iste grane.


Alati za vizualno spajanje

Gledanje usporedbi zasnovanih na tekstu može biti teško. Ako Git difftool postavite s aplikacijom za vizualno spajanje poput DiffMerge ili BeyondCompare, moći ćete bolje vidjeti razlike.

Daljni studiji:

Reference:

Najbolji emulatori igraće konzole za Linux
Ovaj će članak navesti popularni softver za emulaciju igraće konzole dostupan za Linux. Emulacija je sloj kompatibilnosti softvera koji oponaša hardve...
Najbolji Linux Distros za igre na sreću 2021. godine
Linux operativni sustav daleko je prevalio svoj izvorni, jednostavni izgled zasnovan na poslužitelju. Ovaj se OS posljednjih godina izuzetno poboljšao...
Kako snimiti i struji svoju igraću sesiju na Linuxu
U prošlosti se igranje igara smatralo samo hobijem, ali s vremenom je igračka industrija zabilježila ogroman rast u pogledu tehnologije i broja igrača...