Ako vyriešiť problémy v Git Interaktívne Rebase

0

Otázka

Snažím sa rebase mojej miestnej pobočky proti master pobočky. Z môjho local_branch, som vykonal pod príkaz na rebase. Som cvičil pomocou pomôcka príkazového riadka (som.e Git Bash) pre nejaký čas a chceli by ste, aby použil rovnaký vyriešiť aktuálny problém.

Môžem používať Visual Studio Kód nástroj prijať prúd / incoming / obe zmeny.. Ale existuje spôsob, ako vykonávať rovnaké pomocou Git Bash? Aj pre nižšie scenár, aký by mal byť preferovaný spôsob, ako opraviť?

> git pull --rebase origin master
> git status                                                                                                                                             
interactive rebase in progress; onto 53681c8
Last commands done (2 commands done):
   pick 89bb0987 Updated messenger.xml
   pick 990bn189 Updated messenger.xml
Next commands to do (9 remaining commands):
   pick 6780f98 Updated messenger.xml
   pick 9091m969 Updated updated_numbers.xml
  (use "git rebase --edit-todo" to view and edit)
You are currently rebasing branch 'feature-jd-bulk-messenger' on '53681c8'.
  (fix conflicts and then run "git rebase --continue")
  (use "git rebase --skip" to skip this patch)
  (use "git rebase --abort" to check out the original branch)

Unmerged paths:
  (use "git restore --staged <file>..." to unstage)
  (use "git add <file>..." to mark resolution)
        both modified:   jd-test/admin/messenger.xml
git
2021-11-24 05:14:19
1

Najlepšiu odpoveď

0

Toto je len obyčajný zlúčiť konfliktu, zmeny v miestnej pobočky, hraničiť, alebo sa prekrývajú zmeny v vstrekne histórie, a musíte sa rozhodnúť, aký výsledok by mal vyzerať, pretože Git správne nemá odvážil hádať.

existuje spôsob, ako vykonávať rovnaké pomocou Git Bash?

Áno, rozhodnúť, čo jd-test/admin/messenger.xml malo vyzerať, pridať, a git rebase --continuepodľa toho , čo zlúčiť nástroj, ako by mal byť schopný automatizovať upraviť/pick/štádiu sekvenčné pre vás. Používam vimdiff, ktoré zvláda s sebaistotou, sa VS Kód Git integrácie nie pochopiť, čo sa tu deje?

Pre príklad,

git init `mktemp -d`; cd $_
seq 5 >file; git add .; git commit -m-
git branch -t mine
sed 2s,$,a, -i file; git commit -am2
git checkout mine
sed 3s,$,a, -i file; git commit -am3
git rebase

a budete mať konflikt v filetam , kde je správny výsledok je, aby obaja zmenené riadky tak, ako je, ale Git nemôže byť istý, že dosť, že len to je pre vás. git status tu bude pop známe správu, môžem zmysel ju realizácii rebase je teraz v skutočnosti interaktívnej jeden, je to čaká na mňa, je to v interakcii so mnou. Ja by som robiť git mergetool tu.

Ak budete robiť veľa, možno budete chcieť povoliť rerere, opakovanépoužívanie rešnúrový reriešenia: git config rerere.enabled true; git rerere pred pridaním rozlíšenie to prvý raz, po tom Git sa spustite ho na vás, beží to robí Git bude pamätať, nové konflikty a uznesenia v indexe v prípade, že sa opäť v nasledujúcich rebases.

2021-11-24 06:46:20

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................