Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Конфликт возникает при внесении изменений в один и тот же элемент в рабочей области и в удаленном репозитории Git. При возникновении конфликта в статусе Git указано конфликт, и коммит отключён.
При выборе параметра "Обновить" при возникновении конфликтов сообщение уведомляет вас о необходимости разрешения конфликтов перед обновлением.
Существует три способа устранения конфликта:
- Выберите версию, которая будет храниться в пользовательском интерфейсе.
- Верните рабочую область или репозиторий Git в предыдущее синхронизированное состояние.
- Устранение конфликта в Git.
- вручную обновите рабочую область, если не удалось обновить один или несколько элементов.
Устранение конфликтов в пользовательском интерфейсе
Выберите "Обновить все ", чтобы просмотреть список всех элементов, имеющих конфликты. Затем можно выбрать версию, которая будет храниться для каждого элемента. Для каждого конфликтующего элемента можно принять входящие изменения из репозитория Git или сохранить текущую версию в рабочей области.
Нажмите "Принять входящие изменения", чтобы перезаписать изменения в рабочей области. Изменения рабочей области теряются, а состояние Git меняется на синхронизировано, если импорт успешен.
Выберите "Сохранить текущее содержимое ", чтобы сохранить версию в рабочей области. После завершения обновления состояние Git становится незафиксированным , так как изменения в рабочей области еще не зафиксированы в ветви.
Возврат к предыдущему состоянию
Вы можете вернуть всю рабочую область или ветвь Git в последнее синхронизированное состояние. Если откатить ветку Git к предыдущему коммиту, вы все равно сможете увидеть изменения, внесенные в несинхронизованную ветку. При восстановлении рабочей области все изменения, внесенные в нее после последнего коммита, теряются.
Чтобы вернуться к предыдущему синхронизированному состоянию, выполните одно из следующих действий:
- Используйте команду Undo, чтобы вернуть конфликтованные элементы в рабочей области в их последнее синхронизированное состояние.
- Вернитесь к последнему синхронизированному состоянию в Git с помощью
git revert
команды в Azure DevOps.
Вы также можете устранить конфликты, отключив и повторно подключив рабочую область. При повторном подключении выберите направление синхронизации. Обратите внимание, что при повторном подключении система перезаписывает все элементы в рабочей области или ветви, а не только конфликтующие. Он не возвращает рабочую область или ветвь в последнее синхронизированное состояние. Скорее, он перезаписывает все содержимое в одном месте содержимым из другого места.
Устранение конфликтов в Git
Если вы не уверены, какие изменения были внесены и какую версию выбрать и не хотите вернуться к предыдущему состоянию, можно попробовать устранить конфликт в репозитории Git, создав новую ветвь, урешив конфликт в этой ветви и синхронизируя его с текущим.
Примечание.
Только администратор рабочей области может повторно подключить рабочую область к новой ветви.
На панели управления исходами выполните создание новой ветки, используя идентификатор последней синхронизированной ветки, показанный в нижней части экрана.
На этом шаге создается новая ветвь из конфликтующей ветви с использованием последнего синхронизированного состояния Git, до внесения изменений, конфликтующих с вашими изменениями. Изменения можно просмотреть на панели контроля версий, но ничего не нужно обновлять из ветви Git. Ветвь выхода сохраняет текущее состояние рабочей области, поэтому при изменении ветви сохраняются незафиксированные изменения.
Зафиксируйте изменения в новой ветке. Теперь эта новая ветвь включает изменения, которые вы внесли в элементы, связанные с более ранней версией ветви Git и не конфликтующие с вашими изменениями.
В git устраните конфликты между исходной ветвью и новой ветвью.
В Git объедините новую ветвь в исходную ветвь
В Fabric переключите рабочую область обратно в исходную ветвь.