Rebase
Rebase
არის ფილიალის საკომისიოს ისტორიის შეცვლის პროცესი სხვა ფილიალიდან დავალებების გამოყენებით. merge
ცვლილებების შერწყმის ნაცვლად, rebase
საშუალებას გაძლევთ შეიყვანოთ insert
ახალი ვალდებულებები მიმდინარე ფილიალის ჩადენის ისტორიაში შერწყმის დავალებების შექმნის გარეშე.
მაგალითად, ვთქვათ თქვენ გაქვთ ორი ფილიალი: feature-branch
და main
. თქვენ მუშაობთ feature-branch
და გსურთ გამოიყენოთ უახლესი ვალდებულებები main
თქვენს ამჟამინდელ ფილიალში. ამის მისაღწევად შეგიძლიათ გამოიყენოთ rebase:
git checkout feature-branch
git rebase main
როდესაც ამ ბრძანებას აწარმოებთ, Git მიიღებს ვალდებულებებს main
და გამოიყენებს მათ feature-branch
. ეს ნიშნავს, რომ ყველა ვალდებულება feature-branch
გამოჩნდება შემდეგიდან main
. შედეგი არის უფრო სუფთა და წაკითხული ჩადენის ისტორია feature-branch
.
თუმცა, rebase-ის გამოყენებისას, მნიშვნელოვანია აღინიშნოს, რომ შესრულებული ისტორიის შეცვლამ შეიძლება გავლენა მოახდინოს საჯაროდ გაზიარებულ ფილიალებზე. ამიტომ, თუ თქვენ უკვე გადაიტანეთ ვალდებულებები თქვენი ამჟამინდელი ფილიალიდან დისტანციურ საცავში, ზოგადად მიზანშეწონილია არ გამოიყენოთ ამ ფილიალზე ხელახალი ბაზა, რათა თავიდან აიცილოთ კონფლიქტები და ბინძური ჩადენის ისტორია.
Branch
გადართვა
ფილიალების გადართვა Git-ში გულისხმობს ერთი შტოდან მეორეზე გადასვლის პროცესს. როდესაც თქვენ ცვლით ფილიალებს, Git გადააქვს HEAD მაჩვენებელს ახალ ფილიალში, რაც საშუალებას გაძლევთ იმუშაოთ ამ ფილიალზე და განახორციელოთ ცვლილებები სხვა ფილიალებზე გავლენის გარეშე.
მაგალითად, ვთქვათ თქვენ გაქვთ ფილიალები feature-branch
და main
. ზე გადასართავად feature-branch
გამოიყენეთ შემდეგი ბრძანება:
git checkout feature-branch
ფილიალების გადართვის შემდეგ, შეგიძლიათ ცვლილებები შეიტანოთ სამუშაო დირექტორიაში. ყველა commit
, add
, და checkout
ბრძანება ვრცელდება მიმდინარე ფილიალზე.
მაგალითად, თუ დაამატებთ ახალ ფაილს და შეასრულებთ მას feature-branch
, მხოლოდ ეს ფილიალი შეიცავს commit-ს და main
დარჩება უცვლელი. ეს საშუალებას გაძლევთ განავითაროთ ცალკეული ფუნქციები, გამოასწოროთ შეცდომები ან დამოუკიდებლად იმუშაოთ კოდის სხვადასხვა ვერსიაზე. თქვენ შეგიძლიათ გადახვიდეთ ფილიალებს შორის, როდესაც საჭიროა თითოეულ ფილიალზე ცალკე მუშაობა.