Поделиться через


Отправка из Visual Studio в удаленную ветвь

Аутентифицировавшись в GitHub, вы сможете с помощью Visual Studio улучшить свой рабочий процесс в GitHub. Одним из этих улучшений является возможность отправки (также известного как публикация) локального проекта непосредственно на GitHub с одним щелчком мыши. Последний этап в простом рабочем процессе Git — отправка изменений в удалённый репозиторий.

Удаленный репозиторий — это ссылка на репозиторий Git, размещенный где-то, отличающемся от локального компьютера, и называющийся, например, origin/main (или origin/master), где "origin" — это имя по умолчанию для удаленного. Дополнительные сведения об этой терминологии см. на странице " Ветви Git — удаленные ветви " на веб-сайте Git.

Хотя эта статья ссылается на репозитории GitHub, вы можете удаленно работать с поставщиком Git, например GitHub, GitLab или Azure DevOps.

Вот как выполнить push на удаленный репозиторий в Visual Studio.

  1. Убедитесь, что у вас открыт файл для работы из ранее созданного или клонированного репозитория.

  2. Внесите изменения в файл, сохраните его, перейдите на вкладку "Изменения Git " и зафиксируйте это изменение.

  3. В окне Изменений Git обратите внимание на текст ссылки, включающий количество входящих и исходящих фиксаций. В следующем примере текст ссылки гласит 1 исходящий / 0 входящих.

    Окно изменений Git с выделенным текстом исходящей или входящей ссылки в Visual Studio 2022.

    Текст "исходящий" представляет количество коммитов, которые еще не были отправлены в удаленный репозиторий, в то время как текст "входящий" представляет коммиты, которые были получены, но еще не подтянуты из удаленного репозитория.

  4. Чтобы отправить на удаленный, нажмите кнопку "Отправить " (стрелка вверх) или нажмите кнопку "Отправить " в меню Git .

    Если локальная ветвь находится за удаленной ветвью, git не разрешает обычную отправку, и вам будет предложено сделать следующее. Вы можете:

    1. Сначала тяните, затем толкайте. Используйте, если вы хотите получить последние изменения в удаленной ветви, а затем отправить изменения в удаленную ветвь. Это хорошо работает, если у вас нет конфликтующих изменений, и вы хотите обновиться.

    2. Потянуть. Обновляет локальную ветку, но не отправляет изменения. С помощью этого параметра можно проверить изменения или устранить конфликты перед попыткой повторного отправки изменений.

    3. (Если включить его) Принудительное нажатие. Отправьте изменения, не обновляя локальную ветку.

      Чтобы включить принудительную отправку, перейдите в раздел>Параметры>Все параметры>системы управления версиями>Git, и установите флаг push --force-with-lease. Цель этого параметра — разрешить попытку принудительной отправки, даже если изменения произошли в удаленном репозитории, не перезаписывая другие изменения. Дополнительные сведения об этой опции см. в этом вопросе на Stackoverflow и официальной документации по git push.

      Параметр Git

      Если этот параметр включен, параметр "Вытягивание " недоступен в запросе. Вы можете по-прежнему выполнять команду pull как описано в git fetch, pull, push, & sync.

    4. Отмена. Ничего не происходит. Изменения из удаленной ветви не извлекаются, и ваши изменения не отправляются. Локальная ветвь по-прежнему устарела.