Почему TortoiseGit «Редактировать конфликты» показывает все строки как конфликтующие - PullRequest
0 голосов
/ 29 января 2019

При перебазировании моей ветки объектов на текущее состояние источника / мастера Git уведомлял меня о конфликтах:

CONFLICT (directory/file): There is a directory with name modules/mod_name/shared/miniball in HEAD. Adding modules/mod_name/shared/miniball as modules/mod_name/shared/miniball~Poly-PS+Poly-Approx Arbeitsstand 01.07.2018
Auto-merging modules/mod_name/mod_nameExt.h
CONFLICT (add/add): Merge conflict in modules/mod_name/mod_nameExt.h 
Auto-merging modules/mod_name/mod_name.vcxproj
CONFLICT (add/add): Merge conflict in modules/mod_name/mod_name.vcxproj
Auto-merging modules/mod_name/mod_name.h
CONFLICT (add/add): Merge conflict in modules/mod_name/mod_name.h
Auto-merging modules/mod_name/mod_name.cpp
CONFLICT (add/add): Merge conflict in modules/mod_name/mod_name.cpp
Auto-merging modules/mod_name/ModuleVersion.h
CONFLICT (add/add): Merge conflict in modules/mod_name/ModuleVersion.h
Auto-merging modules/mod_name/Intern/pgen.h
CONFLICT (add/add): Merge conflict in modules/mod_name/Intern/pgen.h
Auto-merging modules/mod_name/Intern/pgen.cpp
CONFLICT (add/add): Merge conflict in modules/mod_name/Intern/pgen.cpp
Auto-merging modules/mod_name/Intern/ChainGenerator.h
CONFLICT (add/add): Merge conflict in modules/mod_name/Intern/ChainGenerator.h
Auto-merging modules/mod_name/Intern/ChainGenerator.cpp
CONFLICT (add/add): Merge conflict in modules/mod_name/Intern/ChainGenerator.cpp
Patch failed at 0008 Poly-PS+Poly-Approx Arbeitsstand 01.07.2018
The copy of the patch that failed is found in: .git/rebase-apply/patch

When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".

При открытии файла chaingenerator.cpp в диалоговом окне конфликтов редактирования TortoiseGit отображаются все строкифайла как конфликтующего, даже те, которые явно похожи.

TortoiseGit edit conflicts

Рабочий процесс до перебазирования был примерно следующим

git checkout master
git branch Dev_PolyApproxIntegration
git checkout Dev_PolyApproxIntegration

... <Editing&Commiting in Dev_PolyApproxIntegration> ...
... <Somebody pushing commits into master>

git branch Dev_PolyApproxIntegration_Rebase29_01
git checkout Dev_PolyApproxIntegration_Rebase29_01
git pull origin master
git rebase master

Я не понимаю, почему Git не может обработать (ожидаемые) конфликты, которые могли возникнуть из-за того, что кто-то совершает коммиты в master.Я создал временную ветвь (... rebase29_01), потому что в прошлом я был сожжен той же самой процедурой (и ошибками), и хотел иметь «заведомо исправную» ветвь, к которой можно вернуться, если что-то не получится.В противном случае, мои команды должны были быть в значительной степени учебными материалами ИМХО.Есть ли проблемы с тем, как я выполняю рабочий процесс?Это кто-то совершает, кто сломал вещи для меня?Я понятия не имею, что они сделали.

Кроме того, как мне идти отсюда?Слияние всех различий в файлах вручную невозможно.

...