Использование Git в качестве поставщика управления исходным кодом в коде Visual Studio У меня возникает проблема, когда я пытаюсь объединить файл конфликта с удаленным репозиторием, сохраняя мою текущую версию.
Шаги следующие:
- Файл был изменен в удаленном хранилище, и я изменяю тот же файл в локальном хранилище
- Когда я пытаюсь отправить свои изменения на сервер, я получаю (правильно) сообщение об ошибке (нет -быстрая перемотка вперед), и я должен выполнить извлечение для обновления своего локального репозитория
- . При извлечении редактор предупреждает меня о конфликте в файле, предоставляя мне четыре варианта (Принять текущее изменение, Принять входящее изменение, Принять обаИзменения, сравнение изменений)
- Я принимаю текущее изменение (моя локальная версия) и сохраняю файл.Когда я пытаюсь выполнить изменение, файл не добавляется в раздел ИЗМЕНЕНИЯ, но он исчезает.Git остаются в состоянии «слияния», и я ничего не могу сделать (push дает мне ту же ошибку, что и первый push, а pull дает ошибку, как будто я не разрешил конфликт; фактически в папке .gitУ меня все еще есть файл MERGE_HEAD)
Если я принимаю входящие изменения, принимаю оба изменения или добавляю дополнительные символы в мою предыдущую версию (чтобы изменить версию, которую я пытался зафиксировать ранее), все работает нормально.Я думаю, что когда я выбираю «Принять текущее изменение» и пытаюсь выполнить слияние изменений, редактор (или Git?) Не добавляет файл в STAGED CHANGES, потому что он идентичен версии, ранее зафиксированной, и не обновляет gitстатус, который остается застрявшим в конфликте слияния.
Обходной путь добавления дополнительных символов в предыдущую версию при слиянии работает нормально, но мне нужно знать, если это ошибка, или я пропускаю некоторые шаги при слиянии.
Пожалуйста, не отвечайте мне с обходом командной строки (например, git merge --abort), я ищу решение, дружественное к пользовательскому интерфейсу (не все мои товарищи по команде уверены в командной строке).Заранее спасибо.