Sobes.tech
Junior

Ի՞նչ տեղի ունեցավ և ինչպես վերականգնել աշխատանքը։

sobes.tech AI

Պատասխան AI-ից

Ինտերակտիվ rebase-ը squash (միասնական commit-ներ) գործողությամբ կատարելիս, դուք միացրիք մի քանի commit-ներ մեկում: Նոր արդյունքով, զամբյուղի և պատվերի կոճակի ավելացման commit-ները միացան "UI fixes for mobile" commit- ի հետ և այժմ ցուցադրվում են որպես մեկ commit, որի հաղորդագրությունն է վերջինը:

git log-ում դուք տեսնում եք միայն վերջնական commit-ը, իսկ առանձին commit-ները անհետացել են ճյուղի պատմությունից:

Աշխատանքը վերականգնելու համար՝

  1. Օգտագործեք git reflog — արտածումում կտեսնեք HEAD-ի նախորդ վիճակները, այդ թվում՝ զամբյուղի և կոճակի ավելացման commit-ները:
  2. Կարող եք ստեղծել նոր ճյուղ կամ վերականգնել ընթացիկ ճյուղը անհրաժեշտ commit- ի վրա, օրինակ՝
# Ստեղծել ճյուղ զամբյուղի ավելացման commit- ի վրա
git checkout -b restore-feature 98c1dd3

Կամ վերականգնել feature/checkout-flow ճյուղը անհրաժեշտ վիճակի վրա՝

git reset --hard 98c1dd3

Այնուհետև, կարող եք կրկնել rebase-ը՝ ավելի ուշադիր միավորելով commit-ները կամ խուսափելով squash-ից՝ պատմությունը չկորցնելու համար։