Git чувствителен к регистру в именах файлов при выполнении перебазирования

У меня две ветки производство и мастер.

в основной ветке я создаю изображение svg (icon.svg) с i строчными буквами, я фиксирую этот icon.svg, затем отправляю в Gitlab, затем другой разработчик создает другое изображение с Icon.svg с тем же именем, но с I upperCase, затем он зафиксировал это изображение в производственной ветке.

когда он пытается сделать reabse своей ветки в основную ветку, он выполняет git pull rebase следующим образом: (git pull origin master --rebase) это дает нам неустановленный Icon.svg и символ D для удаления решения, которое я предложил для удаления icone. svg в мастере и совершить .. но это решение не работает, оно дает нам одну и ту же проблему при каждой перебазировке Как мы можем решить эту проблему, спасибо за вашу помощь


person djopovitch    schedule 01.10.2020    source источник
comment
Решите, какой корпус правильный, и последовательно используйте этот корпус. Вы внесли изменения в мастер, который удалил icon.svg?   -  person Schwern    schedule 01.10.2020


Ответы (1)


Если возможно, разработчик должен сбросить настройки и снова выполнить ребазинг.

Но сначала переименуйте Icon.svg

git mv Icon.svg icon.svg

Если случай тот же, новая перебазировка должна быть проще.

person VonC    schedule 01.10.2020
comment
Я пробовал это (но я в Windows 10), когда я делаю это, cmd показывает мне: фатальный: ошибка назначения icons.svg существует - person djopovitch; 01.10.2020
comment
@djopovitch Какую версию Git для Windows вы используете? Как я упоминал в stackoverflow.com/a/3921179/6309, это должно работать, начиная с Git 2.0.1 (июнь 2014 г.): stackoverflow.com/a/24979063/6309 - person VonC; 01.10.2020
comment
я использую Git с версией 2.19.2.windows.1, но не работает (⌣_⌣”) - person djopovitch; 01.10.2020
comment
я видел ссылки, они работают с --force, git mv --force Icon.svg icon.svg - person djopovitch; 01.10.2020
comment
но теперь у меня есть проблема, когда я хочу оформить заказ в производственной ветке (чтобы переименовать изображение в производственной ветке) мастер формы, он отказывается переходить во вторую ветку, она показывает мне error: The following untracked working tree files would be overwritten by checkout: Icon.svg Please move or remove them before you switch branches. Aborting - person djopovitch; 01.10.2020
comment
@djopovitch Чтобы переименовать вторую ветку, лучше всего клонировать репозиторий во второй раз и переключиться на эту ветку, переименовать, зафиксировать и нажать из указанной второй ветки. - person VonC; 01.10.2020
comment
@djopovitch Что касается git mv, будет ли он работать с Git для Windows 2.28? 2.19 кажется старым на данный момент. - person VonC; 01.10.2020
comment
@djopovitch Или попробуйте в репозитории: git config core.ignoreCase true (git-scm.com/docs/git-config#Documentation/) - person VonC; 01.10.2020