Git Rebase i Branch Prebacivanje

Ponovno baziranje

Rebase je proces mijenjanja povijesti predanja grane primjenom obveza iz druge grane. Umjesto korištenja merge za kombiniranje promjena, rebase omogućuje vam da unesete insert nove obveze u povijest predaja trenutne grane bez stvaranja obveza spajanja.

Na primjer, recimo da imate dvije grane: feature-branch i main. Radite na feature-branch i želite primijeniti najnovije obveze iz main na svoju trenutnu granu. Možete koristiti rebase da to postignete:

git checkout feature-branch  
git rebase main  

Kada pokrenete ovu naredbu, Git će preuzeti obveze iz main i primijeniti ih na feature-branch. To znači da će se sva urezivanja na feature-branch pojaviti nakon urezivanja iz main. Rezultat je čišća i čitljivija povijest predanja na feature-branch.

Međutim, kada koristite rebase, važno je napomenuti da promjena povijesti predaje može utjecati na javno dijeljene grane. Stoga, ako ste već gurnuli predaje iz vaše trenutne grane u udaljeno spremište, općenito se savjetuje da ne koristite rebase na toj grani kako biste izbjegli sukobe i neurednu povijest predaja.

 

Branch Prebacivanje

Promjena grana u Gitu odnosi se na proces prelaska iz jedne grane u drugu. Kada mijenjate grane, Git pomiče pokazivač HEAD na novu granu, omogućujući vam da radite na toj grani i unosite promjene bez utjecaja na druge grane.

Na primjer, recimo da imate ogranke feature-branch i main. Da biste se prebacili na feature-branch, upotrijebili biste sljedeću naredbu:

git checkout feature-branch

Nakon promjene grana, možete napraviti promjene u radnom imeniku. Sve naredbe commit, add, i checkout primjenjivat će se na trenutnu granu.

Na primjer, ako dodate novu datoteku i predate je na feature-branch, samo će ta grana sadržavati predaju, dok main ostaje nepromijenjena. To vam omogućuje da razvijete zasebne značajke, popravite greške ili neovisno radite na različitim verzijama koda. Možete se prebacivati ​​između grana kad god je potrebno za rad na svakoj grani zasebno.