Git

Git Primerjaj dve veji

Git Primerjaj dve veji

Skoraj vsi sistemi za nadzor različic imajo možnosti razvejanja. Toda Git je znan po svojih hitrih vejah. Git veje so lahke. Tako so kazni za uspešnost za razvejanje minimalne, razvojne ekipe pa spodbujamo, da se čim bolj razvejajo in združijo. Ko pa delate z več vejami, je pomembno, da lahko primerjate in primerjate razlike. V tej vadnici si bomo ogledali potek dela, da vidimo, kako lahko primerjamo različne veje in zaveze.Najprej nastavimo naslednjo situacijo:

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

      \

       C02 => C04 => C05 (razvoj)

Izvedeni so bili naslednji koraki:

Po vseh predajah ima veja 'master' naslednje datoteke:

Pozdravljen, svet.py
readme.txt

In veja 'razvoj' ima naslednje datoteke:

Pozdravljen, svet.py
info.txt


Primerjava glav dveh vej

Ime vej lahko uporabite za primerjavo glav dveh vej:

$ 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 main ():
print ("Prvi pozdrav!")
- print ("Drugi pozdrav!")
-
+ print ("Podružnica za razvoj pravi Hello")
+ print ("Podružnica za razvoj pravi še enkrat pozdravljeni")
če je __name__ == "__glavna__":
glavni ()
diff --git a / info.txt b / info.txt
nov datotečni način 100644
indeks 0000000… 0ab52fd
--- / dev / null
+++ b / info.txt
@@ -0,0 +1 @@
+Nove informacije
diff --git a / readme.txt b / readme.txt
način izbrisane datoteke 100644
indeks e29c296… 0000000
--- a / readme.txt
+++ / dev / null
@@ -1,2 +0,0 @@
-1 Prva vrstica branja.txt
-2 Druga vrstica branja.txt

Ukaz diff rekurzivno gleda na spremembe. Izvedel je naslednje 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

Tu 'a' pomeni vejo 'master', 'b' pa razvojno vejo. 'A' je vedno dodeljen prvemu parametru, 'b' pa drugemu parametru.  / Dev / null pomeni, da podružnica nima datoteke.


Primerjava med prevzemi

V našem primeru ima veja 'master' naslednje zaveze:

$ git status
Na poveljniku podružnice
nič za zavezati, delovni imenik čist
$ git log --oneline
caa0ddd C06: Spremenjen readme.txt za dodajanje druge vrstice (glavna veja)
efaba94 C03: Dodan readme.txt (glavna veja)
ee60eac C01: Spremenjen hello_world.py za dodajanje drugega zdravo (glavna veja)
22b4bf9 C00: dodan hello_world.py (glavna veja)

Razvojna veja ima naslednje zaveze:

$ git status
O razvoju panog
nič za zavezati, delovni imenik čist
$ git log --oneline
df3a4ee C05: Dodane informacije.txt (razvojna veja)
0f0abb8 C04: Spremenjen hello_world.py za dodajanje Razvojna veja pravi še enkrat Pozdravljena (razvojna veja)
3f611a0 C02: Spremenjen hello_world.py za dodajanje Razvojna veja pravi Hello (razvojna veja)
22b4bf9 C00: dodan hello_world.py (glavna veja)

Recimo, da želimo primerjati hello_world.py za zaveze C01 in C02. Z razpršilci lahko uporabite za primerjavo:

$ 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 main ():
print ("Prvi pozdrav!")
- print ("Drugi pozdrav!")
+ print ("Podružnica za razvoj pravi Hello")
če je __name__ == "__glavna__":
glavni ()

Z istim načelom lahko primerjate tudi zaveze znotraj iste veje.


Orodja za vizualno spajanje

Pogled na besedilne primerjave je lahko težaven. Če Git difftool nastavite z aplikacijo za vizualno spajanje, kot sta DiffMerge ali BeyondCompare, boste lahko bolje videli razlike.

Nadaljni študij:

Reference:

Kako povečati FPS v Linuxu?
FPS pomeni Število sličic na sekundo. Naloga FPS je merjenje hitrosti sličic pri predvajanju video posnetkov ali igranih predstavah. Z enostavnimi bes...
Najboljše laboratorijske igre Oculus App
Če ste lastnik slušalk Oculus, morate biti seznanjeni s stranskim nalaganjem. Sideloading je postopek namestitve vsebine, ki ni shranjena v slušalke. ...
10 najboljših iger za igranje v Ubuntuju
Platforma Windows je bila ena izmed prevladujočih platform za igre na srečo zaradi velikega odstotka iger, ki se danes razvijajo za naravno podporo si...