Vodnik: potiskanje in sledenje novi veji Git

Git Command Line

Obvladovanje vej Git: ustvarjanje in sledenje

Delo z vejami Git je bistveno za učinkovit nadzor različic in skupen razvoj. Ta vodnik vam bo pokazal, kako ustvarite lokalno vejo iz druge veje in jo potisnete v oddaljeni repozitorij.

Poleg tega se boste naučili, kako narediti vejo sledljivo, s čimer zagotovite nemoteno delovanje ukazov git pull in git push. Sledite tem korakom, da poenostavite potek dela Git in ohranite učinkovito upravljanje projektov.

Ukaz Opis
git checkout -b <branch-name> Ustvari in preklopi na novo vejo iz trenutne veje.
git push -u origin <branch-name> Potisne novo vejo v oddaljeni repozitorij in nastavi gornjo (sledilno) vejo.
repo.create_head(<branch-name>) Ustvari novo vejo v repozitoriju Git z uporabo knjižnice GitPython.
branch.checkout() Preklopi na navedeno vejo v repozitoriju Git z uporabo knjižnice GitPython.
origin.push(refspec='{}:{}') Potisne določeno vejo v oddaljeni repozitorij z uporabo knjižnice GitPython.
set_tracking_branch('origin/<branch-name>') Nastavi gornjo (sledilno) vejo za novo ustvarjeno vejo z uporabo knjižnice GitPython.

Razumevanje procesa ustvarjanja podružnic in sledenja

Priloženi skripti prikazujejo, kako ustvariti novo vejo Git in jo potisniti v oddaljeno skladišče, s čimer zagotovite, da ji je mogoče slediti. Prvi skript uporablja ukazno vrstico Git. Z izvršitvijo , je ustvarjena nova veja in hkrati preklopljena. Druga možnost je, sledi doseže enak rezultat v dveh korakih. Če želite potisniti novo vejo v oddaljeno skladišče in jo nastaviti tako, da sledi oddaljeni veji, ukaz git push -u origin new-branch se uporablja.

Drugi skript, napisan v Bashu, avtomatizira ta proces. Začne se s preverjanjem, ali je podano ime veje, in nato uporabi ustvariti in preklopiti na novo vejo, kjer je ime podružnice. Ukaz potisne novo vejo v oddaljeni repozitorij in nastavi sledenje. Tretji skript uporablja Python s knjižnico GitPython. Inicializira repozitorij, ustvari novo vejo z repo.create_head(sys.argv[1]), preklopi nanj z uporabo in ga potisne v oddaljeni repozitorij, medtem ko nastavlja vejo navzgor z .

Ustvarjanje in potiskanje nove veje Git

Uporaba ukazne vrstice Git

# Step 1: Create a new branch from the current branch
git checkout -b new-branch
# or
git branch new-branch
git checkout new-branch
# Step 2: Push the new branch to the remote repository and set it to track the remote branch
git push -u origin new-branch
# Now, the branch is created locally, pushed to the remote, and tracking is set

Avtomatiziranje ustvarjanja in potiskanja vej Git

Uporaba skripta Bash

#!/bin/bash
# Check if branch name is provided
if [ -z "$1" ]
then
  echo "Usage: $0 <branch-name>"
  exit 1
fi
# Create a new branch from the current branch
git checkout -b $1
# Push the new branch to the remote repository and set it to track the remote branch
git push -u origin $1
echo "Branch '$1' created and pushed to remote repository."

Programsko upravljanje podružnic Git

Uporaba Pythona s knjižnico GitPython

import git
import sys
# Ensure branch name is provided
if len(sys.argv) != 2:
    print("Usage: python create_push_branch.py <branch-name>")
    sys.exit(1)
# Repository path
repo_path = '.'  # Current directory
# Initialize repository
repo = git.Repo(repo_path)
# Create new branch
new_branch = repo.create_head(sys.argv[1])
# Checkout to the new branch
new_branch.checkout()
# Push the new branch and set upstream
origin = repo.remote(name='origin')
origin.push(refspec='{}:{}'.format(new_branch, new_branch)).set_tracking_branch('origin/{}'.format(new_branch))
print("Branch '{}' created and pushed to remote repository.".format(sys.argv[1]))

Potopite se globlje v Git Branch Management

Drugi ključni vidik upravljanja vej Git je razumevanje, kako obravnavati konflikte pri združevanju vej. Ko delate v skupini, je mogoče ustvariti in spremeniti več vej hkrati. To lahko privede do sporov, ki jih je treba rešiti, preden se veja lahko združi. The ukaz se uporablja za integracijo sprememb iz ene veje v drugo, vendar lahko pride do konfliktov, če so bile iste vrstice kode drugače spremenjene v vejah, ki se združujejo.

Za razrešitev sporov bo Git začasno ustavil spajanje in vam omogočil, da spore razrešite ročno. Po njihovi rešitvi se ukaz se uporablja za pripravo razrešenih datotek, ki mu sledi da dokončate združitev. Poleg tega orodja, kot je se lahko uporabi za ponovno uporabo potrditev na vrhu drugega osnovnega nasveta, kar lahko poenostavi zgodovino, lahko pa tudi povzroči konflikte, ki jih je treba razrešiti.

Pogosta vprašanja o razvejanju in sledenju Git

  1. Kako izbrišem lokalno podružnico?
  2. Lokalno podružnico lahko izbrišete z ukazom .
  3. Kako izbrišem oddaljeno podružnico?
  4. Če želite izbrisati oddaljeno vejo, uporabite ukaz .
  5. Kako lahko vidim vse veje v svojem skladišču?
  6. Uporaba našteti vse lokalne podružnice in za oddaljene poslovalnice.
  7. Kaj je sledilna veja v Gitu?
  8. Podružnica za sledenje je lokalna podružnica, ki je neposredno povezana z oddaljeno podružnico. Vejo za sledenje lahko nastavite z .
  9. Kako preklapljam med podružnicami?
  10. Uporabite ukaz da preklopite na navedeno podružnico.
  11. Kaj je razlika med in ?
  12. integrira spremembe iz druge veje in ustvari potrditev združevanja. ponovno uporabi zaveze na drugem osnovnem nasvetu, kar ima za posledico linearno zgodovino.
  13. Kako razrešim spore združevanja v Gitu?
  14. Ko pride do spora pri spajanju, ročno uredite sporne datoteke, da odpravite težave, nato uporabite za pripravo razrešenih datotek in za dokončanje združitve.
  15. Kako nastavim oddaljeni repozitorij?
  16. Z ukazom lahko nastavite oddaljeno skladišče .

Obvladovanje ustvarjanja in sledenja vej Git je ključnega pomena za vsakega razvijalca, ki dela v okolju za sodelovanje. Z uporabo ukazov, kot je in , lahko učinkovito upravljate svoje podružnice in zagotovite, da se jim pravilno sledi in da so integrirane z oddaljenim repozitorijem. Ta praksa ne le poenostavi vaš potek dela, ampak tudi zmanjša konflikte in napake med razvojem. Ne pozabite raziskati naprednih funkcij, kot sta reševanje sporov z združevanjem in ponovno baziranje, da še izboljšate svoje sposobnosti nadzora različic.