Otvaranje nove podružnice za vaš neobavezan posao
Prilikom razvoja novih značajki, uobičajeno je shvatiti da bi promjene trebale biti izolirane u vlastitoj grani. To omogućuje bolju organizaciju i paralelni razvoj. Ako ste započeli raditi na novoj značajci i na pola puta odlučili da ona treba biti u zasebnoj grani, Git pruža jednostavan način za prijenos tih nepodvrgnutih promjena.
U ovom članku ćemo vas voditi kroz proces premještanja vašeg postojećeg, neobvezenog posla u novu podružnicu. Osim toga, naučit ćete kako resetirati svoju trenutnu granu bez gubitka bilo kakvog napretka. To osigurava da vaš tijek rada ostane čist i učinkovit.
Naredba | Opis |
---|---|
git checkout -b <branch-name> | Stvara novu granu i prelazi na nju. |
git add . | Određuje sve neizvršene promjene u radnom direktoriju. |
git commit -m "message" | Uređuje postupne promjene s opisnom porukom. |
git checkout - | Vraća se na prethodno odjavljenu poslovnicu. |
git reset --hard HEAD~1 | Resetira trenutnu granu na prethodnu predaju, odbacujući promjene. |
#!/bin/bash | Određuje da se skripta treba pokrenuti u bash ljusci. |
Razumijevanje Git tijeka rada za upravljanje neobvezenim radom
U prvom primjeru skripte ručno premještamo neizvršene promjene u novu granu pomoću niza Git naredbi. Proces počinje s , koji stvara novu granu pod nazivom "new-feature-branch" i prebacuje se na nju. Ovo je bitno za izolaciju rada nove značajke od glavne grane. Zatim postavljamo sve neizvršene promjene s . Ova naredba osigurava da su sve modificirane i nove datoteke pripremljene za predaju. Nakon toga, naredba upisuje ove promjene u novu granu s porukom koja objašnjava radnju.
Nakon što osiguramo promjene u novoj grani, vraćamo se na originalnu granu s . Za resetiranje izvorne grane u prethodno stanje koristimo . Ova naredba nasilno vraća granu na prethodnu predaju, odbacujući sve promjene napravljene od tada. Ovaj niz naredbi osigurava da se rad na novoj značajki sačuva u vlastitoj grani dok se originalna grana vraća u čisto stanje.
Automatiziranje procesa pomoću Shell skripte
Drugi primjer skripte automatizira ovaj proces pomoću skripte ljuske. Skripta počinje provjerom je li dano novo ime grane , koji izlazi iz skripte ako nije navedeno ime. Varijabla dodjeljuje dani naziv grane varijabli. Skripta zatim stvara i prebacuje se na ovu novu granu s . Sve neizvršene promjene postavljaju se pomoću git add ., i počinio sa .
Nakon izvršenja promjena, skripta se vraća na prethodnu granu pomoću . Konačna naredba vraća izvornu granu na njezinu prethodnu predaju, osiguravajući da je čista i bez promjena koje su premještene u novu granu. Ova skripta ljuske pruža prikladan način za automatiziranje procesa premještanja neobvezenog posla u novu granu i ponovnog postavljanja trenutne grane, što olakšava upravljanje vašim tijek rada u Gitu.
Premještanje neizvršenih promjena u novu granu u Gitu
Korištenje Git naredbenog retka
# Step 1: Create a new branch and switch to it
git checkout -b new-feature-branch
# Step 2: Stage all uncommitted changes
git add .
# Step 3: Commit the staged changes
git commit -m "Move uncommitted work to new feature branch"
# Step 4: Switch back to the original branch
git checkout original-branch
# Step 5: Reset the original branch to the previous commit
git reset --hard HEAD~1
Prijenos posla u novu podružnicu uz očuvanje napretka
Korištenje Shell skripte za automatizaciju
#!/bin/bash
# Check if the user provided a branch name
if [ -z "$1" ]; then
echo "Usage: $0 <new-branch-name>"
exit 1
fi
NEW_BRANCH=$1
# Create and switch to the new branch
git checkout -b $NEW_BRANCH
# Stage all uncommitted changes
git add .
# Commit the changes
git commit -m "Move uncommitted work to $NEW_BRANCH"
# Switch back to the original branch
git checkout -
# Reset the original branch
git reset --hard HEAD~1
Stvaranje grana značajki i upravljanje njima u Gitu
Kada radite s Gitom, važno je održavati tijek rada organiziranim, posebno kada razvijate nove značajke. Jedna od najboljih praksi je korištenje značajnih grana. Grana značajke omogućuje vam rad na novoj značajci neovisno o glavnoj bazi koda. Ova izolacija pomaže spriječiti da nedovršeni ili nestabilni kod utječe na glavnu granu. Da biste stvorili granu značajke, koristite naredbu . Ovo ne samo da stvara granu, već vas također prebacuje na nju, osiguravajući da se novi posao obavlja u ispravnom kontekstu.
Nakon što ste kreirali granu značajke, možete raditi na novoj značajci bez utjecaja na glavnu granu. Ovo je posebno korisno u okruženju za suradnju gdje više programera istovremeno radi na različitim značajkama. Kada je vaša značajka dovršena i temeljito testirana, možete je spojiti natrag u glavnu granu pomoću . Na ovaj način glavna grana sadrži samo stabilan i potpun kod. Ako trebate ažurirati granu značajke s najnovijim promjenama iz glavne grane, možete koristiti dok ste na grani značajki, osiguravajući da je ažurirana.
- Što je grana značajke?
- Grana značajke je zasebna grana stvorena za razvoj nove značajke neovisno o glavnoj bazi koda.
- Kako mogu stvoriti novu granu u Gitu?
- Možete stvoriti novu granu pomoću .
- Kako se prebacivati između grana u Gitu?
- Koristiti za prelazak na postojeću podružnicu.
- Kako mogu spojiti granu značajke natrag u glavnu granu?
- Za spajanje značajke grane, prebacite se na glavnu granu i koristite .
- Kako mogu ažurirati svoju granu značajki najnovijim promjenama iz glavne grane?
- Dok ste na grani značajki, koristite uključiti najnovije promjene.
- Što ako želim obrisati granu nakon spajanja?
- Granu možete izbrisati pomoću .
- Kako mogu ispisati sve grane u svom repozitoriju?
- Koristiti za popis svih grana.
- Mogu li preimenovati granu u Gitu?
- Da, koristiti za preimenovanje grane.
- Kako mogu provjeriti u kojoj sam grani trenutno?
- Koristiti ili da vidite trenutnu granu.
- Što se događa ako pokušam spojiti granu sa sukobima?
- Git će od vas tražiti da riješite sukobe prije dovršetka spajanja. Koristiti da biste vidjeli datoteke s sukobima i uredili ih u skladu s tim.
Premještanje neobvezenog posla u novu granu u Gitu vrijedna je tehnika za održavanje organiziranog i čistog tijeka razvoja. Korištenjem ponuđenih naredbi i skripti možete jednostavno stvoriti novu granu za svoju značajku, izvršiti svoje promjene i resetirati trenutnu granu. Ovaj pristup ne samo da čuva vaš napredak, već i održava vašu glavnu granu stabilnom i bez nepotpunih značajki. Usvajanje ovih praksi povećat će vašu produktivnost i olakšati bolju suradnju među članovima tima.