Сведения о Git в Visual Studio
Visual Studio предоставляет пользовательский интерфейс для Git, широко используемой современной системы управления версиями. Независимо от того, размещается ли исходный код в репозитории GitHub, Azure DevOps или другом поставщике Git, можно выполнять все общие задачи управления версиями в интегрированной среде разработки Visual Studio. Кроме того, вы можете работать локально без поставщика, используя возможность резервного копирования источника позже, когда вы будете готовы подключиться к поставщику.
Исходный код, с которым вы работаете, не должен быть создан с помощью Visual Studio. Вы можете работать с любой исходной папкой в любом репозитории Git, независимо от того, есть ли файл проекта Visual Studio.
Начало работы с Git и GitHub в Visual Studio
Чтобы приступить к работе с Git с Visual Studio, выполните следующее:
Если у вас есть репозиторий Git, размещенный на платформе Git, например GitHub, клонируйте репозиторий на локальный компьютер.
В противном случае легко создать новый репозиторий Git и добавить код. Если у вас еще нет поставщика Git, рекомендуется начать работу с GitHub, так как интерфейс Git в Visual Studio оптимизирован для этого поставщика. GitHub предлагает бесплатное и защищенное облачное хранилище кода, где можно хранить код и получать доступ к нему с любого устройства в любом месте.
Вы не только можете добавлять учетные записи GitHub и GitHub Enterprise в цепочку ключей, но и использовать их так же, как и учетные записи Майкрософт. Если у вас нет учетной записи GitHub, выполните следующие действия, чтобы создать учетную запись GitHub для использования с Visual Studio.
Если вы хотите использовать команды Git в командной строке, также следует установить Git для Windows (а не продукт Майкрософт).
Просмотр файлов в обозревателе решений
При клонировании репозитория или открытии локального репозитория Visual Studio переключается на контекст Git. Обозреватель решений загружает папку в корне репозитория Git и сканирует дерево каталогов для любых доступных для просмотра файлов, таких как CMakeLists.txt
или с расширением файла .sln
. Дополнительные сведения см. в разделе Просмотр файлов в обозревателе решений.
Ветви и удаленные репозитории
Вы можете использовать ветви, чтобы хранить связанные изменения отдельно от несвязанных изменений, над которыми вы работаете. Рекомендуемый рабочий процесс Git использует новую ветвь для каждой функции или исправления, над которыми вы работаете. Узнайте, как создать ветку в Visual Studio.
Создав новую ветвь и переключившись на нее, можно начать работу, изменив существующие файлы или добавив новые, а затем зафиксировав работу в репозиторий. Дополнительные сведения о фиксации в Visual Studio и для лучшего понимания состояний файлов в Git см. на странице Создание фиксации.
Git — это распределенная система управления версиями, что означает, что все изменения, внесенные до сих пор, являются изменениями только на локальном уровне. Чтобы внести эти изменения в удаленный репозиторий, необходимо отправить эти локальные коммиты в удаленный.
Если вы работаете в команде или используете разные компьютеры, вам может потребоваться получить и извлечь новые изменения в удаленном репозитории. Дополнительные сведения об управлении сетевыми операциями Git в Visual Studio см. на странице Fetch, pull, push, and sync.
Управление репозиторием и совместная работа
Однако есть случаи, когда больше смысла сосредоточиться на репозитории Git. Например, вам может понадобиться четко представить, над чем работает ваша команда, или скопировать коммит из другой ветки, или просто привести в порядок ваши исходящие коммиты. Visual Studio включает мощные функции просмотра репозиториев и совместной работы, которые устраняют необходимость использования других инструментов.
Чтобы сосредоточиться на репозитории Git, Visual Studio предоставляет окно репозитория Git, которое представляет собой консолидированное представление всех сведений в репозитории, включая локальные и удаленные ветви и историю коммитов. Вы можете получить доступ к этому окну непосредственно из Git или View в строке меню, или из строки состояния.
Просмотр репозиториев Git и управление ими
Дополнительные сведения о том, как использовать окно репозитория Git в Visual Studio для просмотра репозитория Git и управления ими, см. на следующих страницах:
Разрешение конфликтов слияния
Конфликты могут возникать во время слияния, если два разработчика изменяют одни и те же строки в файле, и Git не знает, какой из них правильный. Git останавливает слияние и сообщает о том, что вы находитесь в конфликтованном состоянии. Дополнительные сведения см. на странице Устранение конфликтов слиянием.
Персонализация параметров Git
Чтобы персонализировать параметры Git на уровне репозитория, а также на глобальном уровне:
Перейдите в меню на панель Git>Параметры или в меню Инструменты>Опции>Средства управления версиями>Глобальные настройки Git
Улучшения производительности
В Visual Studio 2022 версии 17.12можно выбрать любой раздел кода. затем щелкните правой кнопкой мыши, разверните подменю Git и выберите Копировать GitHub Permalink (или Копировать AzureDevOps Permalink), чтобы создать GitHub Permalink или Azure DevOps Permalink и скопировать его в буфер обмена. После этого вы можете вставить его в любом месте, где может использоваться ссылка, в браузере или поделиться им по электронной почте, сеансам чата и документам. Вы также можете сделать это в встроенном просмотре деталей коммита в окне репозитория Git . Эта функция позволяет ссылаться на определенный код из предыдущих фиксаций без переключения ветвей. Необходимо войти в Visual Studio с учетной записью для поставщика размещения Git, такого как GitHub или Azure DevOps.
В Visual Studio 2022 версии 17.6можно поиск и связать с рабочими элементами GitHub Issues и Azure DevOps. Ознакомьтесь с функциями Git для повышения производительности блога.
Теперь Git — это интерфейс управления версиями по умолчанию в Visual Studio 2019. Начиная с версии 16.6, мы работали над созданием набора функций и их повторной доработкой на основе ваших отзывов. В версии 16.8он стал интерфейсом управления версиями по умолчанию для всех.
Заметка
Мы продолжаем создавать и совершенствовать набор функций Git в Visual Studio 2022. Чтобы узнать больше о недавнем обновлении функций, см. запись в блоге о поддержке мультирепозиториев в Visual Studio.
Дополнительные сведения о Git
Git — это наиболее широко используемая современная система управления версиями, поэтому вы являетесь профессиональным разработчиком или вы узнаете, как кодировать, Git может оказаться очень полезным для вас. Если вы не знакомы с Git, веб-сайт https://git-scm.com/ является хорошим местом для начала. Там вы найдете памятки, популярную онлайн-книгу и видео Git Basics.
Начало работы с Git в Visual Studio 2019
Мы рассмотрим, как использовать новый интерфейс Git в Visual Studio, но если вы хотите сначала ознакомиться с кратким обзором, ознакомьтесь со следующим видео:
длина видео : 5,27 минут
Существует три способа начать использование Git с Visual Studio для повышения производительности:
- Создание нового репозитория Git. Если у вас уже есть код, который не связан с Git, можно начать с создания нового репозитория Git.
- Клонировать существующий репозиторий Git. Если код, над которым вы хотите работать, не работает на компьютере, можно клонировать любые существующие удаленные репозитории.
- Открыть существующий репозиторий Git. Если код уже находится на компьютере, его можно открыть с помощью file>Open>Project/Solution (или Folder) и Visual Studio автоматически обнаруживает, имеет ли он инициализированный репозиторий Git.
Заметка
Начиная с Visual Studio 2019 версии 16.8, мы включили полностью интегрированную учетную запись GitHub. Теперь вы можете добавить учетные записи GitHub и GitHub Enterprise в цепочку ключей. Вы можете добавлять и использовать их так же, как и в учетных записях Майкрософт, что означает, что у вас будет более простой доступ к ресурсам GitHub в Visual Studio. Дополнительные сведения см. на странице "Работа с учетными записями GitHub в Visual Studio".
Совет
Если у вас нет учетной записи GitHub, выполните действия, описанные на странице Создание учетной записи GitHub для использования с Visual Studio.
Создание репозитория Git в Visual Studio 2019
Если код не связан с Git, можно начать с создания нового репозитория Git. Для этого выберите Git>Создать репозиторий Git в строке меню. Затем в диалоговом окне Создание репозитория Git введите сведения.
Диалоговое окно Создание репозитория Git упрощает отправку нового репозитория в GitHub. По умолчанию новый репозиторий является частным, что означает, что вы единственный, кто может получить к нему доступ. Если снять флажок, репозиторий будет общедоступным, что означает, что любой пользователь на GitHub может просмотреть его.
Совет
Независимо от того, является ли репозиторий общедоступным или частным, лучше иметь удаленную резервную копию кода, хранящегося в GitHub, даже если вы не работаете с командой. Это также делает код доступным для вас независимо от того, какой компьютер вы используете.
Вы можете создать локальный репозиторий Git с помощью параметра Только локально. Кроме того, вы можете связать локальный проект с существующим пустым удаленным репозиторием в Azure DevOps или любым другим поставщиком Git, выбрав параметр Существующий удаленный.
Клонирование существующего репозитория Git в Visual Studio 2019
Visual Studio включает простой интерфейс клонирования. Если вы знаете URL-адрес репозитория, который хотите клонировать, вставьте URL-адрес в раздел «Расположение репозитория» , а затем выберите место на диске, куда вы хотите, чтобы Visual Studio клонировал репозиторий.
Если вы не знаете URL-адрес репозитория, Visual Studio упрощает поиск и клонирование существующего репозитория GitHub или Azure DevOps.
Открытие существующего локального репозитория в Visual Studio 2019
После клонирования репозитория или создания репозитория Visual Studio обнаруживает репозиторий Git и добавляет его в список локальных репозиториев в меню Git.
Здесь вы можете быстро получить доступ к репозиториям Git и переключаться между ними.
Просмотр файлов в обозревателе решений в Visual Studio 2019
При клонировании репозитория или открытии локального репозитория Visual Studio переключает вас в этот контекст Git, сохраняя и закрывая все ранее открытые решения и проекты. Обозреватель решений загружает папку в корне репозитория Git и сканирует дерево каталогов для любых просматриваемых файлов. К ним относятся такие файлы, как CMakeLists.txt или файлы с расширением .sln.
Visual Studio настраивает представление в зависимости от того, какой файл загружается в обозревателе решений:
- Если клонировать репозиторий, содержащий один файл
.sln
, обозреватель решений напрямую загружает это решение. - Если обозреватель решений не обнаруживает файлы
.sln
в репозитории, по умолчанию загружает представление папок. - Если в вашем репозитории есть несколько
.sln
файлов, то в обозревателе решений отображается список доступных представлений для выбора.
Вы можете переключаться между текущим открытым представлением и списком представлений, используя кнопку Переключить Представления на панели инструментов в обозревателе решений.
Дополнительные сведения см. в разделе Просмотр файлов в обозревателе решений раздела Открытие проекта из руководства по репозиторию.
Окно изменений Git в Visual Studio 2019
Git отслеживает изменения файлов в репозитории по мере работы и разделяет файлы в репозитории на три категории. Эти изменения эквивалентны тому, что вы увидите при вводе команды git status
в командной строке:
- не изменённые файлы: Эти файлы не изменились с момента последнего коммита.
- Изменённые файлы: эти файлы были изменены с момента последнего коммита, но вы еще не подготовили их к следующему коммиту.
- промежуточных файлов: эти файлы имеют изменения, которые будут добавлены в следующую фиксацию.
По мере вашей работы, Visual Studio отслеживает изменения файлов в проекте в разделе Изменения окна Изменения Git.
Когда вы будете готовы запланировать изменения, нажмите кнопку + (плюс) для каждого файла, который вы хотите запланировать, или щелкните правой кнопкой мыши файл, а затем выберите Подготовить. Вы также можете одним нажатием зафиксировать все ваши измененные файлы, используя кнопку + (плюс) в верхней части раздела Изменения.
Visual Studio при подготовке изменений создает раздел Подготовленные изменения. В следующую фиксацию добавляются только изменения в разделе поэтапной изменений, которые можно сделать, выбрав Этап фиксации. Эквивалентная команда для выполнения этого действия — git commit -m "Your commit message"
. Изменения также можно отменить, нажав кнопку — (минус). Эквивалентная команда для этого действия — это git reset <file_path>
, чтобы убрать из индекса один файл, или git reset <directory_path>
, чтобы убрать из индекса все файлы в каталоге.
Вы также можете не индексировать изменённые файлы, пропуская индексацию. В этом случае Visual Studio позволяет зафиксировать изменения напрямую, не выполняя их этапы. Просто введите сообщение фиксации и выберите Зафиксировать все. Эквивалентная команда для этого действия — git commit -a
.
Visual Studio также упрощает фиксацию и синхронизацию с одним щелчком мыши, используя сочетания клавиш "Зафиксировать все и отправить" и "Зафиксировать все и синхронизировать". При двойном щелчке любого файла в изменениях и разделах промежуточных изменений можно увидеть сравнение строк с неизмененной версией файла.
Совет
Вы можете связать рабочий элемент Azure DevOps с коммитом с помощью символа "#", если вы подключены к репозиторию Azure DevOps. Вы можете подключить репозиторий Azure DevOps через Team Explorer>Управление подключениями.
Выбор существующей ветви в Visual Studio 2019
Visual Studio отображает текущую ветку в селекторе в верхней части окна изменений Git .
Текущая ветвь также доступна в строке состояния в правом нижнем углу интегрированной среды разработки Visual Studio.
В обоих местах можно переключаться между существующими ветвями.
Создание ветви в Visual Studio 2019
Вы также можете создать новую ветвь. Эквивалентная команда для этого действия — git checkout -b <branchname>
.
Создание новой ветви так же просто, как ввод имени ветви и его базирование от существующей ветви.
В качестве базы можно выбрать существующую локальную или удаленную ветвь. Флажок checkout branch автоматически переключает вас на новую ветку. Для этого действия эквивалентная команда - git checkout -b <new-branch><existing-branch>
.
Окно репозитория Git в Visual Studio 2019
Visual Studio имеет новое окно репозитория Git, которое консолидирует все сведения в вашем репозитории, включая все ветви, удаленные репозитории и историю коммитов. Это окно можно получить непосредственно из Git или Просмотреть в строке меню или в строке состояния.
Управление ветвями в Visual Studio 2019
При выборе Управлять ветками в меню Git вы увидите древовидное представление веток в окне Git Repository. В левой области можно с помощью контекстного меню правой кнопки мыши переключать ветки, создавать новые ветки, выполнять слияние, перебазирование, выбирать изменения и т. д. Когда вы щелкаете по ветке, вы увидите предварительный просмотр истории коммитов в правой панели.
Входящие и исходящие коммиты в Visual Studio 2019
При получении ветви в окне изменения Git отображается индикатор в раскрывающемся списке ветви, в котором отображается количество нерасположенных фиксаций из удаленной ветви. Этот индикатор также показывает количество неотправленных локальных коммитов.
Индикатор также работает в качестве ссылки, чтобы перейти к истории коммитов этой ветки в окне репозитория Git. В верхней части истории теперь отображаются детали этих входящих и исходящих коммитов. Здесь вы также можете решить вытягивать или отправлять фиксации.
Сведения о коммите в Visual Studio 2019
При двойном щелчке по коммиту, Visual Studio открывает его подробности в отдельной инструментальной панели. Здесь можно отменить коммит, сбросить коммит, изменить сообщение коммита или создать тег коммита. При нажатии на измененный файл в коммите, Visual Studio открывает сравнительное Diff представление коммита с предшествующим.
Обработка конфликтов при слиянии в Visual Studio 2019
Конфликты могут возникать во время слияния, если два разработчика изменяют одни и те же строки в файле, и Git не знает, что правильно. Git останавливает слияние и сообщает о том, что вы находитесь в конфликтованном состоянии.
Visual Studio упрощает идентификацию и разрешение конфликта слияния. Во-первых, в окне репозитория Git отображается золотая информационная панель в верхней части окна.
В окне изменений Git также отображается сообщение "слияние выполняется, есть конфликты", а необъединённые файлы отображаются в отдельном разделе под ним.
Но если у вас не открыты ни одно из этих окон, а вместо этого вы перейдете к файлу, содержащему конфликты при слиянии, вам не придется искать следующий текстовый фрагмент.
<<<<<<< HEAD
=======
>>>>>>> main
Вместо этого Visual Studio отображает золотую информационную панель в верхней части страницы, которая указывает, что открытый файл имеет конфликты. Затем щелкните ссылку, чтобы открыть редактор слияния.
Редактор слияния в Visual Studio 2019
Редактор слияния в Visual Studio — это трехсторонняя программа слияния, отображающая входящие изменения, текущие изменения и результат слияния. Вы можете использовать панель инструментов на верхнем уровне редактора слияния для перехода между конфликтами и автоматически объединенными изменениями в файле.
Вы также можете использовать переключатели для отображения и скрытия различий, отображения и скрытия различий слов и настройки макета. В верхней части каждой стороны есть флажки, которые можно использовать для принятия всех изменений с одной стороны или с другой стороны. Но чтобы выполнить отдельные изменения, можно нажать флажки слева от конфликтующих строк на любой стороне. Наконец, после завершения разрешения конфликтов можно нажать кнопку Принять слияние в редакторе слияния. Затем вы пишете сообщение коммита и фиксируете изменения, чтобы завершить процесс разрешения.
Персонализация параметров Git в Visual Studio 2019
Чтобы персонализировать и настроить настройки Git на уровне репозитория, а также на глобальном уровне, войдите в Git>Настройки в строке меню или в Инструменты>Параметры>Управление кодом в строке меню. Затем выберите параметры , которые вы хотите.
Использование полного интерфейса Team Explorer в Visual Studio 2019
Новый интерфейс Git — это система управления версиями по умолчанию в Visual Studio 2019 с версии 16.8. Тем не менее, если вы хотите отключить его, вы можете. Перейдите в раздел Tools>Options>Environment>Preview Features, а затем переключите флажок новый интерфейс взаимодействия с Git, чтобы переключиться на Team Explorer для Git.