Git

Kāda ir atšķirība starp “Git Reset” un “Git Reset -Hard”?

Kāda ir atšķirība starp “Git Reset” un “Git Reset -Hard”?

Git, kā zināms, ir vispopulārākā versiju kontroles sistēma. Versiju vadības jēdziens kļūst nozīmīgs ikreiz, kad mēs runājam par komandas darbu un sadarbību. Piemēram, ja pie viena projekta strādā vairāki darbinieki, datu konsekvence ir galvenā problēma, kas jārisina. Jūs nevarat vienkārši pieņemt, ka par izmaiņām, ko veicis kāds no darbiniekiem, automātiski tiks paziņots visiem pārējiem darbiniekiem, kuri strādā pie šī projekta. Drīzāk vajadzētu būt pienācīgam mehānismam, ar kura palīdzību var nodrošināt datu konsekvenci.

Ja mēs runājam par versiju kontroles programmatūru vai sistēmu, tad, kā norāda nosaukums, tās galvenais uzdevums ir sekot līdzi jūsu versiju vēsturei. Tas nozīmē, ka visas izmaiņas, kas veiktas kādā konkrētā failā, tiks uzskatītas par atsevišķām šī faila versijām. Versiju vadības programmatūra vai sistēma būtībā ļaus jums jebkurā laikā atgriezties pie vecākas versijas atbilstoši jūsu vajadzībām. Bez tam, tādas versijas vadības sistēma kā Git nodrošina arī to, ka jebkuram failam veiktās izmaiņas ir vienlīdz redzamas visiem lietotājiem, kuriem ir piekļuve šim failam, lai viņi nejauši nesāktu strādāt ar vecāku versiju vai šī faila kopiju.

Tāpat kā jebkura cita versiju kontroles sistēma, arī Git ļauj mums veikt noteiktas darbības ar failiem, kurus tajā augšupielādējam. Turklāt jebkurā brīdī tas arī ļauj atsaukt izmaiņas, kuras esat veicis jebkurā konkrētā failā, atiestatot to. Šodien mūsu mērķis ir noskaidrot atšķirību starp operācijām “git reset” un “git reset -hard”.

Izpratne par atšķirību starp “git reset” un “git reset -hard”

Pirms izprotat atšķirību starp operācijām “git reset” un “git reset -hard”, mums ir jāzina dažas no vissvarīgākajām terminoloģijām, kas tiek izmantotas šajā versijas kontroles sistēmā. Gitā “Galva” ir definēta kā rādītājs, kura uzdevums ir norādīt uz jaunāko saistību vai izmaiņu, ko esat veicis failā. “Indekss” tiek definēts kā visu nesen izveidoto failu kopa, kas, domājams, tiks piešķirta nākamajam. Visbeidzot, “Darba katalogs” attiecas uz failu kopu no visas failu sistēmas, kurā pašlaik strādājat.

Uzzinot par šīm terminoloģijām, tagad jums būs ļoti viegli saprast atšķirību starp operācijām “git reset” un “git reset -hard”. Kā mēs jau teicām, ir vairākas iespējas, kuras varat veikt failā, kas tiek augšupielādēts vietnē Git. Līdzīgi “git reset” tiek definēta kā noklusējuma darbība, ar kuru jūs varat atsaukt pēdējo izdarīto vai mainīto failu pašreizējais fails. Tagad šai operācijai ir piecas dažādas iespējas, proti: ciets, mīksts, sapludināts, sajaukts un saglabāts.

Atkarībā no opcijas, kuru esat izvēlējies vai izmantojis ar komandu “git reset”, jūs saņemsit citu “atsaukt” līmeni. Operācija “git reset -hard” tiek uzskatīta par visefektīvāko darbību, ja vēlaties pilnībā atbrīvoties no pēdējās saistības. Tas nozīmē, ka, veicot šo darbību, faila galva mainīsies, t.e., tas vairs nenorādīs uz jūsu pēdējo apņemšanos. Ne tikai tas, bet tas arī izdzēsīs jūsu pēdējo saistību no indeksa un pat mainīs jūsu pašreizējo darba direktoriju.

No otras puses, ja jūs izmantojat kādu citu opciju ar komandu “git reset”, piemēram, “soft”, tad, to darot, mainīsit tikai jūsu galvas stāvokli. Izņemot to, tas neradīs izmaiņas jūsu indeksā, kā arī nemainīs jūsu pašreizējo darba direktoriju. Īsāk sakot, mēs varam teikt, ka “git reset” ir komanda, savukārt “git reset -hard” ir tā variācija, kas tiek izmantota, ja vēlaties iznīcināt visas pēdējās saistības pēdas.

Secinājums

Izlasot šo detalizēto paskaidrojumu par “git reset” un “git reset -hard” operācijām, jūs tagad varēsit tos viegli atšķirt. Šis raksts arī palīdzēs jums izvēlēties, kura opcija jums jāizmanto ar komandu “git reset” atkarībā no jūsu īpašajām prasībām.

Kā instalēt League of Legends operētājsistēmā Ubuntu 14.04
Ja jūs esat League of Legends fans, tad šī ir iespēja jums izmēģināt League of Legends. Ņemiet vērā, ka LOL tiek atbalstīts PlayOnLinux, ja esat Linux...
Instalējiet jaunāko OpenRA stratēģijas spēli Ubuntu Linux
OpenRA ir bezmaksas / bezmaksas reāllaika stratēģijas spēļu dzinējs, kas atjauno agrīnās Vestvudas spēles, piemēram, klasisko Command & Conquer: Red A...
Instalējiet jaunāko Dolphin emulatoru Gamecube un Wii operētājsistēmai Linux
Delfīnu emulators ļauj jums spēlēt izvēlētās Gamecube un Wii spēles Linux personālajos datoros (PC). Tā kā Dolphin Emulator ir brīvi pieejams un atvē...