Kuo skiriasi „Git Revert“, „Checkout“ ir „Reset“?

Kuo Skiriasi Git Revert Checkout Ir Reset



Git naudojamas šaltinio kodo failų pasikeitimams sekti ir kelių kūrėjų darbui koordinuoti. Tai leidžia kūrėjams grįžti į ankstesnes būsenas ir net anuliuoti įsipareigojimus arba saugykloje atliktus pakeitimus. „ git grįžti “, „ git kasos “ ir „ git atstatyti “ yra trys naudingiausios „Git“ komandos, kurias reikia žinoti dirbant su „Git“ projektu.

Šio straipsnio rezultatai yra šie:

Kaip atskirti komandas „git reset“, „git revert“ ir „git checkout“?

git revert “, „ atsiskaityti “ ir „ git atstatyti ” komandos yra būdai, kaip pakeisti šaltinio kodą ir anuliuoti juos, jei vartotojui nepatinka, kaip jie pasirodė. Skirtumas tarp šių komandų yra jų funkcionalumas ir naudojimas, pavyzdžiui:





  • git revert ” komanda naudojama pakeitimams anuliuoti, sukuriant naują saugyklos įsipareigojimą iš ankstesnio įsipareigojimo ir į saugyklą įtraukiant naują istoriją.
  • atsiskaityti ” komanda naudojama perjungti iš vienos šakos į kitą ir atkurti darbo medžio failus iš sustojimo srities.
  • git atstatyti ” komanda panaikinti pakeitimus iš sustojimo indekso. Ji pašalina failus iš sustojimo srities, kad prireikus vėliau juos būtų galima vėl įrašyti.

Kaip atšaukti įsipareigojimus naudojant „git revert“ komandą?

Norėdami anuliuoti įsipareigojimus, pirmiausia eikite į norimą „Git“ saugyklą ir sukurkite failą. Tada sekite failą ir atlikite pakeitimus. Po to į naują failą įtraukite šiek tiek turinio, pakoreguokite ir atlikite naujus pakeitimus. Galiausiai paleiskite „ git revert “ komandą ir patikrinkite grąžinimo pakeitimus.



1 veiksmas: pereikite į Git katalogą

Vykdykite ' cd ” komandą kartu su konkrečiu vietinio katalogo keliu ir eikite į jį:



$ cd 'C:\Eik \R saugykla1'





2 veiksmas: sukurkite naują failą

Sugeneruokite naują failą dabartinėje saugykloje naudodami toliau pateiktą komandą:

$ liesti demo_file.txt



3 veiksmas: Stebėkite naują failą

Tada naudokite „ git pridėti “ komanda, kad pridėtumėte naują failą į sustojimo sritį:

$ git pridėti demo_file.txt

4 veiksmas: atlikite pakeitimus

Tada vykdykite šią komandą, kad įkeltumėte failą iš sustojimo srities:

$ git commit -m „Demo failas pridėtas“

5 veiksmas: atnaujinkite naują failą

Po to pridėkite šiek tiek turinio prie naujo failo ir atnaujinkite jį naudodami „ aidas “ komanda:

$ aidas 'Sveiki! Demonstracinis turinys' >> demo_file.txt

6 veiksmas: pridėkite naujų pakeitimų į sustojimo sritį

Tada paleiskite „ git pridėti. “ komanda, skirta atlikti visus pridėtus pakeitimus:

$ git pridėti .

7 veiksmas: atlikite naujus pakeitimus

Atlikite etapinius pakeitimus vykdydami toliau pateiktą komandą kartu su pranešimu:

$ git commit -m „Failas atnaujintas“

8 veiksmas: patikrinkite „Git Log“.

Norėdami peržiūrėti įsipareigojimų istoriją, patikrinkite Git žurnalą naudodami toliau pateiktą komandą:

$ git žurnalas --prisijungęs

Pagal toliau pateiktą išvestį yra du įsipareigojimai, o HEAD nurodo „ Failas atnaujintas “ įsipareigoti:

Tarkime, kad paskutinis įsipareigojimas buvo atliktas per klaidą, ir mes turime anuliuoti pakeitimus. Tokiu atveju naudokite grąžinimo operaciją, kaip nurodyta toliau.

9 veiksmas: grąžinkite pakeitimus

Paleiskite „ git revert ” komandą kartu su HEAD, kad anuliuotumėte šio įsipareigojimo pakeitimus:

$ git revert GALVA

Žemiau esančioje ekrano kopijoje matote, kad grąžinimo operacija buvo sėkmingai atlikta:

10 veiksmas: patikrinkite, ar grąžinami pakeitimai

Galiausiai patikrinkite „Git“ nuorodų žurnalo istoriją, kad peržiūrėtumėte naujus įsipareigojimų istorijos pakeitimus:

$ git žurnalas --prisijungęs

Galima pastebėti, kad „ Failas atnaujintas commit vis dar yra projekto istorijoje net ir po atkūrimo operacijos. Taigi, užuot ją pašalinusi, ši konkreti komanda pridėjo naują įsipareigojimą grąžinti pakeitimus:

Kaip perjungti filialą naudojant „git checkout“ komandą?

Norėdami atsiskaityti iš vieno vietinio filialo į kitą norimą filialą, pirmiausia patikrinkite visus galimus filialus saugykloje. Tada paleiskite „ atsiskaityti “ komandą kartu su norimos šakos pavadinimu, kur kūrėjai turi perjungti.

1 veiksmas: patikrinkite filialų sąrašą

Peržiūrėkite šakų sąrašą dabartinėje saugykloje naudodami „ gito šaka “ komanda:

$ gito šaka

Žemiau pateiktame išvestyje matyti, kad saugykloje yra dvi šakos, o „ meistras “ yra dabartinė darbo šaka:

2 veiksmas: atsiskaitykite kitam padaliniui

Dabar paleiskite „ atsiskaityti “ komandą kartu su norimos šakos pavadinimu ir perjunkite į ją:

$ atsiskaityti dev

3 veiksmas: patikrinkite esamą filialą

Norėdami įsitikinti, ar atsiskaitymo operacija buvo atlikta sėkmingai, peržiūrėkite filialų sąrašą:

$ gito šaka

Matome, kad sėkmingai atsiskaitėme iš „ meistras “ šaka į “ dev “ filialas. Dabar, ' dev “ yra dabartinė darbo šaka:

Kaip atsekti pokyčius naudojant „git reset“ komanda?

Norėdami panaikinti pakeitimus, pirmiausia patikrinkite dabartinės saugyklos „Git“ nuorodų žurnalo istoriją. Tada paleiskite „ git atstatyti “ komanda, kad perkeltumėte šakos žymeklį.

1 veiksmas: patikrinkite „Git Log“.

Peržiūrėkite įvykdymo istoriją ir patikrinkite, kur rodo HEAD, naudodami „ git žurnalas “ komanda:

$ git žurnalas --prisijungęs

Galima pastebėti, kad GALVA rodo į „ Failas atnaujintas “ įsipareigoti:

2 veiksmas: iš naujo nustatykite pakeitimus

Norėdami pašalinti įsipareigojimą iš Git vietinio darbo katalogo, paleiskite „ git atstatyti “ komanda kartu su „– sunku “ parinktį ir nurodykite norimą HEAD padėtį, kur reikia perkelti žymeklį:

$ git atstatyti --sunku GALVA~ vienas

Pateikta išvestis reiškia, kad atkūrimo operacija buvo sėkmingai atlikta:

3 veiksmas: patikrinkite atstatymo pakeitimus

Galiausiai peržiūrėkite naujus įsipareigojimų istorijos pakeitimus, patikrindami Git žurnalą naudodami toliau pateiktą komandą:

$ git žurnalas --prisijungęs

Kaip matote, „ Failas atnaujintas Įsipareigojimas buvo pašalintas iš įsipareigojimų istorijos ir HEAD dabar rodo Pridėtas demonstracinis failas “ įsipareigoti:

Mes paaiškinome skirtumą tarp „ git revert “, „ atsiskaityti “ ir „ git atstatyti “ komandos.

Išvada

git revert ” komanda naudojama pakeitimams anuliuoti, sukuriant naują saugyklos įsipareigojimą iš ankstesnio įsipareigojimo ir į saugyklą įtraukiant naują istoriją. “ atsiskaityti t“ komanda naudojama šakoms perjungti saugykloje ir leidžia kūrėjams dirbti su skirtingomis šakomis, nereikia atlikti pakeitimų tiesiogiai saugykloje. Kita vertus, „ git atstatyti ” komanda naudojama nenuosekliems pakeitimams iš stebėjimo srities. Šiame straipsnyje buvo atskirtos „git reset“, „git revert“ ir „git checkout“ komandos ir kaip jos veikia.