Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Git — это наиболее часто используемая система управления версиями. С помощью Git вы можете отслеживать изменения, внесенные в файлы, поэтому у вас есть запись о том, что было сделано, и при необходимости у вас есть возможность вернуться к более ранним версиям файлов. Git также упрощает совместную работу, позволяя изменениям, внесённым несколькими людьми, объединяться в один источник.
Git можно установить в Windows AND в WSL
Важно учитывать, что при включении WSL и установке дистрибутива Linux вы устанавливаете новую файловую систему, отделяемую от диска Windows NTFS C:\ на компьютере. В Linux диски не обозначаются буквами. Они получают точки подключения. Корневая директория файловой системы /
является точкой монтирования вашего корневого раздела или папки в случае WSL. Не все под /
является одним и тем же диском. Например, на ноутбуке я установил две версии Ubuntu (20.04 и 18.04), а также Debian. Если открыть эти дистрибутивы, выберите домашний каталог с помощью команды cd ~
, а затем введите команду explorer.exe .
, проводник Windows откроет и отобразит путь к каталогу для этого дистрибутива.
Дистрибутив Linux | Путь Windows для доступа к домашней папке |
---|---|
Ubuntu 20.04 | \\wsl$\Ubuntu-20.04\home\username |
Ubuntu 18.04 | \\wsl$\Ubuntu-18.04\home\username |
Debian | \\wsl$\Debian\home\username |
Windows PowerShell | C:\Users\username |
Совет
Если вы ищете доступ к каталогу файлов Windows из командной строки дистрибутива WSL, а не C:\Users\username
, каталог будет доступен с помощью /mnt/c/Users/username
, так как дистрибутив Linux просматривает файловую систему Windows в качестве подключенного диска.
Вам потребуется установить Git в каждой файловой системе, с которой вы планируете использовать ее.
Установка Git
Git уже установлена с большинством дистрибутивов подсистемы Windows для Linux, однако может потребоваться обновить до последней версии. Вам также потребуется настроить файл конфигурации Git.
Сведения об установке Git см. на сайте Git Download for Linux. У каждого дистрибутива Linux есть собственный диспетчер пакетов и команда установки.
Для последней стабильной версии Git в Ubuntu/Debian введите команду:
sudo apt-get install git
Заметка
Вы также можете установить Git для Windows, если вы еще не сделали этого.
Настройка файла конфигурации Git
Чтобы настроить файл конфигурации Git, откройте командную строку для дистрибутива, в которой вы работаете, и задайте имя с помощью этой команды (заменив "Ваше имя" предпочитаемым именем пользователя):
git config --global user.name "Your Name"
Задайте сообщение электронной почты с помощью этой команды (заменив "youremail@domain.com" предпочитаемой электронной почтой):
git config --global user.email "youremail@domain.com"
Совет
Если у вас еще нет учетной записи GitHub, вы можете зарегистрироваться на GitHub. Если вы никогда раньше не работали с Git, руководства GitHub могут помочь вам приступить к работе. Если вам нужно изменить конфигурацию Git, это можно сделать с помощью встроенного текстового редактора, например nano: nano ~/.gitconfig
.
Рекомендуется защитить учетную запись с помощью двухфакторной аутентификации (2FA).
Настройка диспетчера учетных данных Git
Диспетчер учетных данных Git (GCM) — это помощник для работы с безопасными учетными данными Git, построенный на .NET, который можно использовать как с WSL1, так и с WSL2. Она обеспечивает поддержку многофакторной проверки подлинности для репозиториев GitHub, Azure DevOps, Azure DevOps Server и Bitbucket.
GCM интегрируется в поток аутентификации для таких служб, как GitHub, и, получив аутентификацию у хостинг-провайдера, запрашивает новый токен аутентификации. Затем он безопасно сохраняет токен в Диспетчер учетных данных Windows. В первый раз вы можете использовать Git для связи с поставщиком услуг размещения без необходимости повторной проверки подлинности. Он просто получит доступ к токену в диспетчере учетных данных Windows.
Чтобы использовать GCM с WSL, необходимо использовать Windows 10 версии 1903 или более поздней. Это первая версия Windows, которая включает необходимый инструмент wsl.exe
, который GCM использует для взаимодействия с Git в дистрибутивах WSL.
Рекомендуется установить последнюю версию Git для Windows, чтобы поделиться настройками учетных данных & между WSL и хостом Windows. Диспетчер учетных данных Git входит в состав Git для Windows, а последняя версия включается в каждый новый выпуск Git для Windows. Во время установки вам будет предложено выбрать вспомогательный компонент учетных данных с GCM, заданным по умолчанию.
Если у вас есть причина не устанавливать Git для Windows, вы можете установить GCM в качестве приложения Linux непосредственно в дистрибутиве WSL, но обратите внимание, что это означает, что GCM работает в качестве приложения Linux и не может использовать функции проверки подлинности или хранилища учетных данных операционной системы Windows узла. См. репозиторий GCM для получения инструкций о том, как настроить WSL без Git для Windows.
Чтобы настроить GCM для использования с дистрибутивом WSL, откройте дистрибутив и введите следующую команду:
Если установлен GIT, >= v2.39.0
git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/bin/git-credential-manager.exe"
если установлен GIT и >= v2.36.1
git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager.exe"
иначе, если версия < — v2.36.1, введите эту команду:
git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/bin/git-credential-manager-core.exe"
Заметка
Использование GCM в качестве вспомогательной функции учетных данных для установки WSL Git означает, что любой набор конфигурации в WSL Git не учитывается GCM (по умолчанию). Это связано с тем, что GCM работает в качестве приложения Windows и, следовательно, будет использовать установку Git for Windows для запроса конфигурации. Это означает, что такие параметры прокси-сервера для GCM необходимо задать в Git для Windows, а также WSL Git, так как они хранятся в разных файлах (%USERPROFILE%\.gitconfig
и \\wsl$\distro\home\$USER\.gitconfig
). Вы можете настроить WSL таким образом, чтобы GCM использовал конфигурацию WSL Git, но это означает, что параметры прокси-сервера будут уникальными для конкретной установки WSL, а не совместно с другими пользователями или узлом Windows.
Git с SSH
Менеджер учётных данных Git работает только с удалёнными репозиториями HTTP(S). Вы по-прежнему можете использовать Git с SSH:
Дополнительная конфигурация для Azure
Если вы планируете работать с Azure Repos или Azure DevOps, требуется дополнительная конфигурация:
git config --global credential.https://dev.azure.com.useHttpPath true
Теперь любая операция git, выполняемая в дистрибутиве WSL, будет использовать GCM. Если у вас уже есть учетные данные, кэшированные для узла, он получит доступ к ним из диспетчера учетных данных. Если нет, вы получите ответ диалогового окна, запрашивающий учетные данные, даже если вы находитесь в консоли Linux.
Совет
Если вы используете ключ GPG для обеспечения безопасности подписывания кода, вам может потребоваться связать ключ GPG с адресомэлектронной почты GitHub.
Добавление файла Git Ignore
Мы рекомендуем добавить .gitignore-файл в проекты. GitHub предлагает коллекцию полезных шаблонов .gitignore с рекомендуемыми настройками файлов .gitignore, организованными в соответствии с вашим вариантом использования. Например, вот шаблон GitHub по умолчанию gitignore для проекта Node.js.
Если вы решили создать репозиторий с помощью веб-сайта GitHub, установите флажки для инициализации репозитория с помощью файла README, gitignore-файла, настроенного для конкретного типа проекта, и добавления лицензии, если это необходимо.
Git и VS Code
Visual Studio Code поставляется со встроенной поддержкой Git, включая вкладку управления исходным кодом, которая показывает изменения и обрабатывает команды Git для вас. Узнать больше о поддержке Git в VS Code .
Окончания строк Git
Если вы работаете с той же папкой репозитория между Windows, WSL или контейнером, обязательно настройте согласованные окончания строк.
Так как Windows и Linux используют разные окончания строк по умолчанию, Git может сообщать о большом количестве измененных файлов, которые не имеют различий от их окончания строки. Чтобы предотвратить это, можно отключить конвертацию окончания строки с помощью файла .gitattributes
; или глобально в Windows. Ознакомьтесь с этой документацией VS Code о разрешении проблем, связанных с концами строк в Git.
Дополнительные ресурсы
- WSL и VS Code
- Учебная лаборатория GitHub: онлайн-курсы
- Git Средства визуализации
- средства Git — хранилище учетных данных
Windows Subsystem for Linux