Нарм

Чӣ тавр ислоҳ кардани хатогии Git Merge

Кӯшиш Кунед, Ки Асбоби Моро Барои Бартараф Кардани Мушкилот Санҷед





Нашр шудааст дарНавсозии охирин: октябри 13, 2021

Консепсияи филиалҳо бо функсияи Git алоқаманд аст. Як шохаи усто мавҷуд аст, ки пас аз он якчанд шохаҳое мавҷуданд, ки аз он шоха мегиранд. Агар шумо аз як филиал ба филиали дигар гузаред ё бо файлҳои филиал ихтилофҳо вуҷуд дошта бошанд, шумо бо паёми хатогӣ дучор мешавед, Хатои Git: шумо бояд аввал индекси ҷории худро ҳал кунед . Агар хато ҳал нашавад, шумо наметавонед филиалҳоро дар дохили Git иваз кунед. Ба воҳима лозим нест, зеро мо имрӯз хатои Git Merge-ро ислоҳ мекунем.



Чӣ тавр ислоҳ кардани хатогии Git Merge

Git ва хусусиятҳои он



Git он код ё нармафзорест, ки ба шумо имкон медиҳад тағиротро дар ҳама гуна гурӯҳи файлҳо назорат кунед. Он одатан барои ҳамоҳангсозии кор байни барномасозон истифода мешавад. Баъзе хусусиятҳои ҷолиби Git инҳоянд:

    Суръат Амнияти маълумотва беайбият Ёрӣбарои равандҳои тақсимшуда ва ғайрихаттӣ

Ба ибораи соддатар, Git як системаи идоракунӣ мебошад озод ва кушодаасос . Бо кӯмаки саҳмгузорони гуногун, он лоиҳаҳо ва файлҳоро пайгирӣ мекунад, зеро онҳо дар тӯли чанд вақт тағир меёбанд. Ғайр аз он, Git ба шумо имкон медиҳад ба ҳолати пештара баргардед ё версия, дар сурати хатогиҳо ба монанди Git merge.



Шумо метавонед Git барои зеркашӣ кунед Windows , macOS , ё Linux системаҳои компютерӣ.

Мундариҷа[ пинҳон ]



Хатои Git Merge -ро чӣ гуна ислоҳ кардан мумкин аст: Аввал шумо бояд индекси ҷории худро ҳал кунед

Хатои Git Current Index шуморо аз сабаби ихтилофоти якҷояшавӣ ба филиали дигар гузаштан манъ мекунад. Баъзан муноқиша дар дохили файлҳои муайян метавонад боиси пайдо шудани ин хато гардад, аммо аксар вақт он вақте пайдо мешавад нокомӣ дар якҷояшавӣ . Он инчунин метавонад ҳангоми истифодаи он рӯй диҳад Кашидан ё тафтиш фармон медиҳад.

хато: шумо бояд аввал индекси ҷории худро ҳал кунед

Ду сабаби маълуми хатогии Git Current Index вуҷуд дорад:

    Нокомии якҷояшавӣ -Он боиси муноқишаи якҷояшавӣ мегардад, ки барои гузариши ҳамвор ба филиали навбатӣ бояд ҳал карда шавад. Муноқиша дар файлҳо -Вақте ки дар филиали мушаххасе, ки шумо истифода мебаред, баъзе файлҳои зиддиятнок мавҷуданд, он ба шумо тафтиш ё тела додани кодро манъ мекунад.

Намудҳои ихтилофҳои Git Merge

Шумо метавонед дар ҳолатҳои зерин бо хатогии Git Merge дучор шавед:

    Оғози раванди муттаҳидшавӣ:Раванди муттаҳидшавӣ вақте оғоз намешавад тағир додани майдони марҳилаи феҳристи корӣ барои лоиҳаи ҷорӣ. Ба шумо лозим аст, ки аввал амалҳои интизоршударо устувор кунед ва анҷом диҳед. Дар ҷараёни якҷоякунӣ:Вақте ки саҳ мушкилот байни филиали якҷояшаванда ва филиали ҷорӣ ё маҳаллӣ , раванди муттаҳидшавӣ ба анҷом намерасад. Дар ин ҳолат, Git кӯшиш мекунад, ки хатогиро мустақилона ҳал кунад. Бо вуҷуди ин, дар баъзе мавридҳо, шояд ба шумо лозим ояд, ки ҳамон чизро ислоҳ кунед.

Қадамҳои омодагӣ:

1. Пеш аз иҷрои фармонҳо барои ислоҳи хатои Git merge, шумо бояд боварӣ ҳосил кунед, ки ин ҳеҷ яке аз корбарони дигар аз файлҳои муттаҳидшуда ба онҳо дастрасӣ пайдо мекунанд ё дар онҳо ҳама гуна тағирот ворид мекунанд.

2. Тавсия дода мешавад, ки шумо ҳамаи тағиротҳоро захира кунед бо истифода аз фармони commit пеш аз тафтиш аз он филиал ё пеш аз якҷоя кардани филиали ҷорӣ бо шохаи сар. Барои иҷрои фармонҳои додашуда истифода баред:

|_+_|

Шарҳ: Мо ба шумо тавсия медиҳем, ки Луғати истилоҳоти умумӣ ва фармонҳои Git-ро, ки дар охири ин мақола оварда шудаанд, хонед.

Git Merge. Чӣ тавр ислоҳ кардани хатогии Git Merge: шумо бояд аввал индекси ҷории худро ҳал кунед

Акнун, биёед бо ҳалли хатогии Git Current Index ё Хатои Git Merge оғоз кунем.

Усули 1: Git Merge аз нав танзим кунед

Бозгашти якҷояшавӣ ба шумо кӯмак мекунад, ки ба ҳолати аввала бирасед, вақте ки ягон якҷоякунӣ анҷом дода нашудааст. Пас, фармонҳои додашударо дар муҳаррири код иҷро кунед:

1. Навиштан $ git reset - якҷоя кардан ва зад Ворид кунед.

2. Агар ин кор накунад, пас фармонро истифода баред $ git аз нав танзим кардан - САРВАИ сахт ва зад Ворид кунед .

Ин бояд якҷояшавии Git reset-ро ба даст орад ва ба ин васила хатои Git-ро ҳал кунад.

Усули 2: Филиали ҳозира ё ҷориро бо филиали асосӣ якҷоя кунед

Фармонҳои зеринро дар муҳаррири ёддошт иҷро кунед, то ба филиали ҷорӣ гузаред ва хатогии Git Merge-ро ҳал кунед:

1. Навиштан git checkout ва сипас, пахш кунед Ворид кунед калид.

2. Навиштан git merge - устоди мо иҷрои ӯҳдадории муттаҳидшавӣ.

Шарҳ: Рамзи зерин ҳама чизро аз филиали сар/мастер рад мекунад ва маълумотро танҳо аз филиали ҷории шумо нигоҳ медорад.

3. Баъдан, иҷро кунед Master Checkout git баргаштан ба шохаи сар.

4. Дар охир, истифода баред git кор мекунад барои якҷоя кардани ҳарду ҳисоб.

Пас аз қадамҳои ин усул ҳарду шохаҳоро муттаҳид мекунанд ва хатои индекси ҷории Git ҳал карда мешавад. Агар не, ислоҳи навбатиро санҷед.

Ҳамчунин хонед: Низоъҳои якҷоякунии ҷузвдонҳоро дар Windows 10 нишон диҳед ё пинҳон кунед

Усули 3: Ҳалли ихтилофи якҷоякунӣ

Файлҳои ихтилофро пайдо кунед ва ҳама мушкилотро ҳал кунед. Якҷоя кардани ҳалли низоъ як қисми муҳими раҳоӣ аз хатои индекси ҷории Git мебошад.

1. Аввалан, муайян кунед душвориовар файлҳо ҳамчун:

  • Фармонҳои зеринро дар муҳаррири код ворид кунед: $ vim /path/to/file_with_conflict
  • пахш кунед Ворид кунед калид барои иҷрои он.

2. Акнун, файлҳоро ба таври зерин иҷро кунед:

  • Навъи $ git commit -a -m 'паёми содир'
  • Хит Ворид кунед .

Пас аз анҷоми қадамҳои зерин, кӯшиш кунед тафтиш аз филиал ва бубинед, ки оё он кор кардааст.

Усули 4: Филиали боиси низоъро нест кунед

Филиалро, ки ихтилофоти зиёд дорад, нест кунед ва аз нав оғоз кунед. Вақте ки ҳеҷ чизи дигар кор намекунад, ҳамеша фикри хубест, ки файлҳои ихтилофро барои ислоҳ кардани хатои Git Merge ба таври зерин нест кунед:

1. Навиштан git checkout -f дар муҳаррири код.

2. Задан Ворид кунед .

Ҳамчунин хонед: Якчанд ҳисобҳои Google Drive ва Google Photos

Луғат: Фармонҳои умумии Git

Рӯйхати зерини фармонҳои Git ба шумо дар бораи нақши он дар ҳалли хатои Git Merge тасаввуроти мухтасар медиҳад: шумо бояд аввал индекси ҷории худро ҳал кунед.

як. git log - якҷоякунӣ: Ин фармон рӯйхати ҳамаи фармонҳои паси низоъро дар системаи шумо пешниҳод мекунад.

ду. git diff : Шумо метавонед бо истифода аз фармони git diff фарқияти байни анбори давлатҳо ё файлҳоро муайян кунед.

3. git Checkout: Тағироти ба файл воридшударо бекор кардан мумкин аст ва шумо ҳатто метавонед бо истифода аз фармони git checkout шохаҳоро тағир диҳед.

Чор. git reset - омехта: Бо истифода аз он тағиротро дар феҳристи корӣ ва тағиротҳои минтақаи марҳилавӣ бекор кардан мумкин аст.

5. git merge - қатъ: Агар шумо хоҳед, ки пеш аз якҷояшавӣ ба саҳна баргардед, шумо метавонед фармони Git, git merge –abort -ро истифода баред. Ин инчунин ба шумо барои баромадан аз раванди якҷоякунӣ кӯмак мекунад.

6. git reset: Агар шумо хоҳед, ки файлҳои ихтилофро ба ҳолати аслии худ баргардонед, шумо метавонед ин фармонро истифода баред git reset. Ин фармон одатан дар вақти ихтилофи якҷоя истифода мешавад.

Луғат: Шартҳои умумии Git

Пеш аз ислоҳи Хатои Git Merge, ин шартҳоро хонед, то бо онҳо шинос шавед.

як. Тафтиш- Ин фармон ё истилоҳ ба корбар дар иваз кардани шохаҳо кӯмак мекунад. Аммо ҳангоми ин кор шумо бояд аз ихтилофоти файл эҳтиёт бошед.

ду. Гирифтан - Шумо метавонед ҳангоми иҷрои Git файлҳоро аз як филиал ба истгоҳи кории худ зеркашӣ ва интиқол диҳед.

3. Индекс- Он бахши кор ё саҳнасозии Git номида мешавад. Файлҳои тағирёфта, иловашуда ва нестшуда дар дохили индекс нигоҳ дошта мешаванд, то он даме, ки шумо барои содир кардани файлҳо омода набошед.

Чор. Якҷоя кардан - Гузаронидани тағирот аз як шоха ва ворид кардани онҳо ба шохаи дигар (ба таври анъанавӣ усто).

5. САР - Он маҳфуз аст сар (истиноди номбаршуда) ҳангоми содирот истифода мешавад.

Тавсия дода мешавад:

Мо умедворем, ки роҳнамои мо кӯмак кард ва шумо тавонистед, ки мушкилотро ҳал кунед Хатои Git Merge: шумо бояд аввал индекси ҷории худро ҳал кунед . Агар шумо ягон савол дошта бошед, онҳоро дар бахши шарҳ гузоред.

Элон Деккер

Элон як нависандаи технологӣ дар Cyber ​​S аст. Вай тақрибан 6 сол боз дастурҳои тарзи кор менависад ва мавзӯъҳои зиёдеро фаро гирифтааст. Ӯ дӯст медорад, ки мавзӯъҳои марбут ба Windows, Android ва ҳилаҳо ва маслиҳатҳои охиринро фаро гирад.