Skip to main content
  1. Learn
  2. Software Development
  3. Guides
  4. Git tutorial
  5. Как использовать Git
  6. Как использовать Git в Windows
  7. Решение конфликта
GuidesSoftware DevelopmentBacklog
Git

Project and code management together.

Решение конфликта

Чтобы продолжить отправку только что сделанных изменений в удаленный репозиторий, мы должны вручную разрешить конфликт. Для этого давайте выполним запрос на получение, чтобы получить самый последний набор изменений из удаленного репозитория.

Щелкните правой кнопкой мыши каталог «tutorial» и выберите «Pull» (Получить).

Click Pull from right-click menu.

Нажмите «ОК».

Click OK button

Если вы видите информационное окно, рассказывающее о слияниях, прочтите его и нажмите «ОК».

The message automatic merge failed comes up

Когда вы увидите предупреждающее сообщение о том, что автоматическое слияние не выполнено, нажмите «Close» (Закрыть).

Click Close button

Затем вас спросят, хотите ли вы увидеть изменения в этой версии. Нажмите «Yes» (Да).

Click Yes button

TortoiseGit сообщает нам, что автоматическое слияние не выполнено, поскольку «sample.txt» имеет конфликт слияния. Нажмите «ОК».

The conflicts have happened.

Когда вы откроете sample.txt, вы увидите маркеры, добавленные Git, указывающие на конфликты в этом разделе файла, как показано ниже.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
<<<<<<< HEAD
commit: Save the status of an index
=======
pull: Obtain the content of the remote repository
>>>>>>> 17c860612953c0f9d88f313c8dfbf7d858e02e91

Мы собираемся решить конфликт, приняв оба изменения и удалив маркер.

Anyone can learn Git with this tutorial and Backlog
add: Register a change in an index
commit: Save the status of an index
pull: Obtain the content of the remote repository

Как только мы решим конфликт и содержимое файла изменится, нам нужно будет инициировать фиксацию.

Щелкните правой кнопкой мыши и выберите Git Commit -> main.

Отобразится окно с информацией о слияниях; нажмите «ОК».

A window about merges

Щелкните правой кнопкой мыши файл «sample» и выберите «Resolved» (Решено), поскольку мы только что решили этот конфликт слияния вручную с помощью нашего текстового редактора.

Right-click the sample file and choose Resolved

Когда отобразится окно для подтверждения этого изменения, нажмите «Yes» (Да).

a window displays to confirm this change

При появлении предупреждения о сообщении о фиксации, в котором все еще упоминаются конфликтующие файлы, выберите «Ignore» (Игнорировать) или «Abort» (Прервать). Затем удалите строки из сообщения о фиксации или следуйте советам внизу, чтобы TortoiseGit автоматически удалял строки, начинающиеся с «#». (Автоматическое удаление — это поведение по умолчанию для большинства других клиентов Git.)

Теперь мы получили последние изменения из удаленного репозитория.

Completed acquiring the latest changes from the remote repository

Это указывает на то, что два журнала успешно объединены с новой фиксацией слияния. Теперь мы можем безопасно передать это изменение в удаленный репозиторий без каких-либо конфликтов слияния.

Если вы не хотите учиться использовать Git на Mac или в командной строке, переходите сразу к разделу Ветвление.

Subscribe to our newsletter

Learn with Nulab to bring your best ideas to life