GitHub — это крупнейшее хранилище Git репозиториев, а так же центр сотрудничества для миллионов разработчиков и проектов.
Огромный процент всех репозиториев хранится на GitHub, а многие проекты с открытым исходным кодом используют его ради Git хостинга, баг-трекера, рецензирования кода и других вещей.
Так что, пока всё это не часть открытого Git проекта, наверняка вы захотите, или вам придётся взаимодействовать с GitHub при профессиональном использовании Git.
Эта глава про эффективное использование GitHub.
Мы разберём регистрацию, управление учётной записью, создание и использование Git репозиториев, как вносить вклад в чужие проекты и как принимать чужой вклад в собственный проект, а так же программный интерфейс GitHub и ещё множество мелочей, который облегчат вам жизнь.
Если вас не интересует использование GitHub для размещения собственных проектов или сотрудничества с другими проектами, размещёнными на нём, вы можете смело перейти к главе Инструменты Git.
Настройка и конфигурация учётной записи
Первым делом нужно создать бесплатную учётную запись.
Просто зайдите на https://github.com, выберите имя которое ещё не занято, укажите адрес электронной почты и пароль, а затем нажмите большую зелёную кнопку «Sign up for GitHub».
Рисунок 81. Форма регистрации на GitHub
Далее вы попадёте на страницу с тарифными планами, её пока можно проигнорировать.
GitHub вышлет письмо для проверки вашего электронного адреса.
Сделайте этот шаг, он достаточно важный (как мы увидим далее).
Примечание |
GitHub предоставляет почти все свои функции для бесплатных учётных записей, за исключением некоторых расширенных возможностей. |
Клик на расположенном в верхнем левом углу экрана логотипе, изображающем гибрид кота и осьминога (его называют осьмикот), откроет панель управления.
Теперь всё готово для работы с GitHub.
Доступ по SSH
На данный момент вы можете подключаться к репозиториям Git используя протокол https://
авторизуясь при помощи только что созданного логина и пароля.
Однако для того чтобы просто клонировать публично доступный проект, вам необязательно авторизовываться на сайте, но тем не менее, только что созданный аккаунт понадобится в то время, когда вы захотите загрузить (push) сделанные вами изменения.
Если же вы хотите использовать SSH доступ, в таком случае вам понадобится добавить публичный SSH ключ.
(Если же у вас нет публичного SSH ключа, вы можете его сгенерировать)
Откройте настройки вашей учётной записи при помощи ссылки, расположенной в верхнем правом углу окна:
Рисунок 82. Ссылка «Настройка учётной записи» («Account settings»)
Выберите секцию слева под названием «Ключи SSH» («SSH keys»).
Рисунок 83. Ссылка («SSH keys»)
Затем нажмите на кнопку «Добавить ключ SSH» («Add an SSH key»), задайте имя ключа, а так же скопируйте и вставьте сам публичный ключ из ~/.ssh/id_rsa.pub
(ну или как бы у вас не назывался этот файл) в текстовое поле, затем нажмите «Добавить ключ» («Add key»).
Примечание |
Задавайте такое имя SSH ключа, которое вы в состоянии запомнить. |
Ваш аватар
Следующий шаг, если хотите — замена аватара, который был сгенерирован для вас, на вами выбранный аватар.
Пожалуйста зайдите во вкладку «Профиль» («Profile»), она расположена над вкладкой «Ключи SSH» и нажмите «Загрузить новую картинку» («Upload new picture»).
Рисунок 84. Ссылка «Профиль» («Profile»)
Выберем логотип Git с жёсткого диска и отредактируем картинку под желаемый размер.
Рисунок 85. Редактирование аватара
После загрузки каждый сможет увидеть ваш аватар рядом с вашим именем пользователя.
Если вы используете такой популярный сервис как Gravatar (часто используется для учётных записей WordPress), тот же самый аватар будет использован «по умолчанию».
Ваши почтовые адреса
GitHub использует ваш почтовый адрес для привязки ваших Git коммитов к вашей учётной записи.
Если вы используете несколько почтовых адресов в своих коммитах и хотите, чтобы GitHub работал с ними корректно, то вам нужно будет добавить все используемые почтовые адреса в секцию под названием «Почтовые адреса» («Emails»), расположенную на вкладке «Администрирование» («Admin»).
Рисунок 86. Почтовые адреса
Как можно видеть на рисунке Почтовые адреса, у почтовых адресов имеются несколько состояний.
Верхний почтовый адрес подтверждён и является основным для пользователя, это тот самый адрес, куда будут направляться оповещения, а также остальные уведомления.
Второй адрес тоже подтверждён, и так же может быть назначен в качестве основного.
Последний адрес не подтверждён, это значит, что вы не можете использовать его в качестве основного и получать на него уведомления.
При отправке коммита в любой из репозиториев, GitHub распознает один из указанных почтовых адресов и автоматически привяжет этот коммит к вашей учётной записи.
Двухфакторная аутентификация
В качестве дополнительной меры безопасности, вы можете настроить «Двухфакторную аутентификацию» («Two-factor Authentication» или «2FA»).
Двухфакторная аутентификация — механизм, который становится всё более и более популярным методом по снижению риска скомпрометировать вашу учётную запись в ситуации, когда пароль от вашей учётной записи, по тем или иным причинам, стал известен злоумышленникам.
Активация этого механизма заставит GitHub запрашивать у вас оба пароля при авторизации, поэтому даже в ситуациях, когда ваш основной пароль скомпрометирован, злоумышленник всё равно не получит доступ к вашей учётной записи.
Вы сможете найти настройку «Двухфакторной аутентификации» («Two-factor Authentication») в секции «Безопасность» («Security») вкладки «Настройка учётной записи» («Account settings»).
Рисунок 87. Двухфакторная аутентификация («Two-factor Authentication»)
При нажатии на кнопку «Настроить двухфакторную аутентификацию» («Set up two-factor authentication») вы будете перенаправлены на страницу, где вам нужно будет настроить использование мобильного приложения для генерации вторичного кода проверки (так называемый «одноразовый пароль основанный на времени»), так же можно настроить GitHub таким образом, чтобы он отправлял вам СМС с кодом в момент, когда вам нужно авторизоваться на сайте.
После того, как вы выберете предпочитаемый вами метод и выполните предлагаемые инструкции, ваша учётная запись будет в большей безопасности, и вам будет предоставляться дополнительный код во время авторизации на сайте.
- →
Введение
В предыдущей статье мы рассмотрели наиболее часто используемые команды при работе в консоли. В данной публикации продолжим осваивать этот инструмент, используя его для взаимодействия с системой контроля версий (Version Control System, СКВ) Git, а также с его неизменным спутником, хранилищем кода, GitHub.
1. Система контроля версий
Одной из важнейших тем, которую необходимо изучить начинающему разработчику, а также освоить сопутствующие ей приложения, является СКВ. Это must have инструмент для любого программиста, с которым в обязательном порядке нужно уметь работать.
Чтобы было понятнее, что такое СКВ, приведем ряд примеров и задач, которые она призвана решать:
Программист устраивается в компанию, где ему предстоит работать над одним проектом с другими разработчиками. Каким образом он сможет предоставлять свой код коллегам и получать доступ к их наработкам: с помощью какого-то мессенджера, электронной почты, соц. сетей? А если над проектом работает не один десяток или сотня людей, которые используют код друг друга и меняют его не по одному разу в день?
Программист написал работающий код, но, увлекшись его оптимизацией, испортил свою часть работы, да еще и затронул код коллег, от чего программа стала работать не корректно. Как решить такую проблему и вернуться к рабочей версии кода: жать до посинения Ctrl + Z, чтобы откатиться к ней? А если среда разработки не запомнила все изменения и отменить уже ничего нельзя?
Внешняя компания, помогающая разрабатывать приложение, прислала патч с кодом, содержащим ошибку, которую никто вначале не заметил. Из-за этого программа стала уязвима для хакерских атак. Специалист по информационной безопасности спустя какое-то время обнаружил брешь и решил выяснить, кто был автором уязвимого кода. Узнать это не имея на руках все изменения, которые были внесены в проект, достаточно проблематично.
Для решения этих и множества других задач необходимо иметь простой и удобный инструмент, который позволял бы:
- отслеживать все изменения в коде, которые были внесены разработчиками
- обмениваться кодом внутри команды
- хранить все промежуточные версии файлов
- отменять внесенные изменения в код, откатываясь до любой рабочей версии подобно точкам восстановления в Windows
- видеть, кто и когда вносил изменения в файлы
Для таких ситуаций и были придуманы СКВ, которые стали отраслевым стандартом как для командной разработки, так и среди индивидуальных программистов.
Следует заметить, что СКВ используют не только программисты, но и писатели, дизайнеры, переводчики — все, кому требуется хранить промежуточные версии своих наработок.
2. Виды СКВ
СКВ бывают локальными (ЛСКВ), централизованными (ЦСКВ) и распределенными (РСКВ).
2.1. Первое поколение СКВ
В первом поколении СКВ были локальными: они хранили все изменения файлов на одном устройстве в локальной базе данных. При этом разрешалось только одному пользователю одновременно вносить изменения в файл. Если требовалось поработать с файлом, то необходимо было получить его из репозитория, как книгу в библиотеке. Далее этот файл блокировался до тех пор, пока запросивший его разработчик не возвращал его обратно — до тех пор никто другой не мог его редактировать.
Такие системы не предназначены для удобного взаимодействия с удалённой командой. Примером ЛСКВ является VSS, SCCS и RCS.
2.2. Второе поколение СКВ
Для решения проблем ЛСКВ были созданы ЦСКВ, которые используют центральный сервер для хранения всех версий файлов. А уже к нему по сети подключаются разработчики для получения, хранение файлов и т. д. Эти системы впервые позволили нескольким разработчикам одновременно работать с одними и теми же файлами. Использование ЦСКВ являлось стандартом на протяжении многих лет. К ним относятся CVS, SVN и т. д.
ЦСКВ позволяет взаимодействовать между собой удаленным участникам, но при этом все привязаны к одному серверу, где хранятся файлы проекта, что является серьезным недостатком. Если он вдруг станет недоступен или повредится жесткий диск, то ни один из его клиентов не сможет использовать контроль версий, да и это чревато повреждением файлов и потерей части проекта.
2.3. Третье поколение СКВ
С целью устранения недостатков ЦСКВ были разработаны системы третьего поколения или РСКВ такие, как Git, Mercurial, Bazaar. В данных системах клиенты скачивают к себе на локальный компьютер полностью весь проект со всеми файлами и их изменениями за все время его существования. И если один из серверов выйдет из строя, то потерянный код можно будет восстановить, взяв его у любого программиста из команды, и загрузить на общий сервер для продолжения работы.
РСКВ прекрасно зарекомендовали себя в командной работе вне зависимости от того, в какой части света находятся сотрудники.
В конечном итоге Git оставил позади всех своих конкурентов, которые, не смотря на это, до сих пор используются разработчиками во всем мире.
3. СКВ Git
Git — самая популярная, бесплатная РСКВ с открытым исходным кодом, которая позволяет отслеживать любые изменения в файлах, работать над одним проектом совместно с коллегами, обмениваться кодом и многое другое. С историей возникновения Git можно ознакомиться по ссылке.
Распределенность Git означает, что работоспособность системы не зависит от одного центрального сервера, хранящего файлы. Вместо этого любой клиент имеет у себя на компьютере полную версию репозитория (хранилища кода) с историей изменений, сделанными за все время существования проекта. Т. е. код проекта распределяется одинаково между всеми участниками.
Некоторые путают Git и GitHub, но это не одно и тоже. Git — это программа (консольная утилита), которую устанавливает у себя программист для отслеживания и внесения изменений в файлах. GitHub — это сайт (хостинг) для хранения этих изменений и обмена файлами проекта. Его еще называют социальной сетью для программистов. Существуют и другие подобные сайты, например, BitBucket, SourceForge, GitLab и т. д.
Если кратко, то первоначальное взаимодействие Git и GitHub выглядит так:
Регистрация на github.com
Создание пустого репозитория
Скачивание, установка и настройка Git
Подключение его к своему проекту
Перенос файлов с помощью Git со своего компьютера на GitHub (в облако) для доступа к ним другим участникам команды (или только для себя)
Оставшаяся часть статьи будет посвящена всем перечисленным выше этапам (кроме 5го пункта, который мы рассмотрим в следующей статье).
4. Создание аккаунта и репозитория на GitHub
4.1. Создание аккаунта
Перейдите на сайт github.com и в правом верхнем углу страницы, для регистрации, нажмите Sign up.
Введите свои данные: электронную почту; пароль (рекомендации по созданию надежного пароля); имя, которое будет использоваться на GitHub и подтверждение на рассылку.
После регистрации, на указанную почту, придет письмо: откройте в нем ссылку для подтверждения своего электронного адреса.
4.2. Создание репозитория
Следующим шагом является создание на GitHub нового репозитория.
Репозиторий — это просто хранилище для чего угодно. В нашем случае, мы будем хранить в нем код. Репозиториев можно создать неограниченное количество под любой проект. Например, сейчас мы создадим хранилище под названием startjava2 (вам цифру 2 писать не нужно). А в будущем еще несколько под разными названиями: basejava, topjava — в них будет храниться код, связанный с этими проектами.
Чтобы создать новый репозиторий, нажмите на сайте GitHub в правом верхнем углу + и выберите New repository.
Откроется новая страница с первоначальными настройками, где нужно ввести имя репозитория и краткое описание (необязательно). Также необходимо пометить, чтобы он был Public (при Private доступ к репозиторию будет только по приглашению). Все остальное мы настроим позже.
Нажав Create repository, вас перекинет на страницу со ссылкой на созданный репозиторий и набором стандартных команд, которыми мы воспользуемся в следующей статье (сейчас вам их использовать не нужно).
5. Скачивание и установка Git
Скачаем Git с официального сайта и установим к себе на компьютер. Мне нужна версия под Windows.
Запустим скачанный файл для начала установки.
6. Способы авторизации
Доступ к репозиториям на GitHub из командной строки можно получить двумя способами: по протоколу HTTPS или SSH.
С 13 августа 2021 г. GitHub отменил использование паролей для аутентификации из командной строки с помощью Git в пользу токенов персонального доступа (Personal access tokens, PAT). Эти шаги были сделаны с целью повышения безопасности пользователей.
6.1. Токен персонального доступа и HTTPS
Для доступа (авторизации) к GitHub по протоколу HTTPS необходимо создать PAT.
Преимущества PAT перед паролями:
Возможность генерации токена для каждого устройства, с которого необходимо получать доступ к репозиторию на GitHub
Возможность настройки ограничений для каждого токена при работе с GitHub
Возможность аннулирования токена для конкретного устройства
Возможность ограничить срок действия токена
6.1.1. Создание токена
Для создания токена необходимо выполнить следующие шаги:
Авторизуйтесь на github.com, а затем нажмите на круглое изображение своего профиля в правом верхнем углу страницы и выберите Settings.
После генерации отобразится страница с токеном, сообщающая о том, что его необходимо обязательно скопировать в надежное место для последующего использования (вместо пароля). В противном случае вы не сможете это сделать в дальнейшем (после обновления страницы).
Относитесь к своим токенам как к паролям, держа их в секрете.
Полученный токен необходимо использовать в командной строке вместо пароля при выполнении операций Git через HTTPS (вы это поймете, когда Git потребует аутентифицироваться).
При запросе аутентификации, вам нужно будет ввести:
Username: ваш email
Password: ваш скопированный токен (вместо пароля)
По завершению срока работы токена, вам на почту придет письмо, сообщающее о том, что его следует продлить. Просто перейдите по ссылке из письма и перегенерите токен.
6.2. Доступ через SSH
Если среди начинающих программистов про HTTPS знают все, то про SSH многие даже и не слышали. Исправим это, проведя вводный ликбез, а заодно и узнаем про доступ к GitHub через данный протокол.
Хотя авторизация на основе SSH считается наиболее безопасной, ее правильная настройка часто может быть проблемой. С другой стороны, PAT зачастую гораздо проще настроить, но при этом они гораздо менее безопасны.
SSH (Secure SHell, «безопасная оболочка») — это сетевой протокол, обеспечивающий шифрование передаваемых данных, а также защищенный доступ к удаленному серверу.
Подключаться к удаленному серверу через SSH можно как с помощью пароля, так и посредством двух ключей (публичного и приватного), которые необходимо создать — второй способ наиболее безопасен и предпочтителен.
Чтобы проще запомнить назначение ключей, их можно представить, как замок (открытый) и ключ к замку (закрытый). Замок без ключа не открыть, но при этом замок может видеть кто угодно.
Данные ключи являются взаимозависимыми: зашифровав информацию одним ключом, расшифровать ее можно только другим. Например, если вы зашифровали pdf-документ публичным ключом (ставите на него замок), то открыть и прочитать его сможете только вы, т. к. только у вас есть закрытый ключ. Так же это работает и в обратную сторону: если вы зашифруете письмо приватным ключом, то расшифровать его можно только вашим публичным ключом.
Это также означает, что так как ваш публичный ключ может распространяться открыто, то любой, кто им обладает (коллега), сможет открыть зашифрованный документ. Но в этом нет опасности, т. к. это лишь гарантирует, что документ был зашифрован именно вами. По такому принципу работает цифровая подпись.
Для создания ключей необходимо использовать утилиту ssh-keygen, поставляемую в Windows с Git. В Linux/macOS она входит в состав пакета SSH.
После ввода данной команды все время жмите Enter, ничего не вводя.
В итоге в Windows по адресу C:\Users\Имя_пользователя\.ssh будет создано два файла: id_rsa (приватный ключ — никому его не показывайте) и id_rsa.pub (открытый ключ — можете показывать кому угодно).
Для Linux/macOS ключи будут созданы по адресу
/home/Имя_пользователя/.ssh
Откройте файл с открытым ключом обычным текстовым редактором и скопируйте его содержимое. Скопированный ключ необходимо добавить в GitHub, выполнив следующие шаги:
Нажмите на круглое изображение своего профиля в правом верхнем углу страницы и выберите Settings.
7. Настройка Git
7.1. Диспетчер учетных данных
В Windows Git для хранения данных пользователей поставляется с диспетчером учетных данных (Git Credential Manager for Windows, GCM). Мы с ним встречались во время установки Git. Он хранит учетные данные пользователей, что позволяет не вводить их все время при использовании авторизации через HTTPS.
Для активации его использования и отображения настройки введите в консоли:
> git config --global credential.helper manager
> git config credential.helper
Существуют и другие режимы хранения данных пользователей, отличные от manager.
7.2. Установка личной информации
Для подписи изменений, которые будут вноситься вами в репозитории, чтобы было видно, кто изменил, добавил, удалил код, необходимо указать электронную почту и имя, которые вы используете на GitHub.
git config --global user.email ВАШ_ЕМЭЙЛ
git config --global user.name ВАШЕ_ИМЯ
Параметр —global позволяет выставить один раз нужные настройки, которые Git будет использовать для всех репозиториев на вашем компьютере.
Отобразим внесенные изменения:
> git config --get user.name & git config --get user.email
ВАШЕ_ИМЯ
ВАШ_ЕМЭЙЛ
Если для каких-то отдельных репозиториев необходимо указать другое имя или электронную почту, то вместо —global используйте —local. При установке локальных настроек требуется, чтобы консоль была открыта в папке репозитория, а иначе команда не сработает.
7.3. Установка текстового редактора
Если вам требуется изменить текстовый редактор, который будет запускать Git при необходимости, то для начала нужно найти его расположение на вашем диске. В официальной документации к Git есть таблица с подсказками по поводу места размещения и параметров для разных редакторов. Либо вы можете найти его самостоятельно с помощью команды where, которую мы использовали во второй части.
Для смены редактора (хоть мы его и указали во время установки, но нам требуется внести для него дополнительную настройку) и отображения результата выполните команды:
> git config --global core.editor "'C:\Program Files\Sublime Text\sublime_text.exe\' --wait"
> git config --get core.editor
'C:\Program Files\Sublime Text\sublime_text.exe' --wait
Обратите внимание, что я добавил дополнительные одинарные кавычки (апострофы) в путь до текстового редактора (помимо двойных кавычек). Это сделано из-за наличия в пути пробелов (если у вас их нет, то и кавычки не нужны). Без дополнительных кавычек редактор не запустится.
Также я добавил параметр —wait, который не позволит закрыться редактору, пока вы его сами не завершите. Без него в будущем возникла бы ошибка «aborting commit due to empty commit message» при использовании команды commit (ее мы пройдем в следующей статье).
7.4. Смена имени ветки по умолчанию
Если по какой-то причине вам захочется поменять слово master (название ветки по умолчанию) на что-то другое, например, сейчас идет тренд в пользу main, то выполните команду:
git config --global init.defaultBranch main
7.5. Создание локального репозитория
Перед использованием Git необходимо создать локальный репозиторий и выполнить настройку.
Внешний репозиторий мы уже создали на GitHub, но он пока пуст.
Укажем Git на корневую папку нашего проекта, чтобы он мог отслеживать в ней все изменения.
Для этого существует команда init, отвечающая за создание репозитория, т. е. места на компьютере, где хранятся файлы и папки проекта.
Разместите репозиторий в папке StartJava. Именно в ней мы будем хранить все подпапки и классы, связанные с изучаемыми темами.
Откройте cmder в папке StartJava и введите git init:
D:\Java\StartJava
> git init
Initialized empty Git repository in D:/Java/StartJava/.git/
Просто init мы не можем написать, т. к. будет непонятно к чему относится данная команда. Поэтому необходимо в начале писать git, а только потом нужную команду.
Репозиторий успешно создан. В результате в консоли стало отображаться слово master, а в папке StartJava появилась скрытая папка .git (с точкой в начале), где и будет в дальнейшем храниться информация обо всех изменениях, сделанных в репозитории. Отобразим его содержимое:
D:\Java\StartJava (master)
> ls -a
./ ../ .git/ about.txt src/
7.6. Корректное отображение русских букв
Если в Git некорректно отображается кириллица, то необходимо выполнить команду:
git config --global core.quotepath off
Я переименовал src в срс и выполнил git status (ее мы пройдем в следующей статье). Вместо срс отобразилось «\321\201\321\200\321\201/».
После выполнения настройки, русский текст будет отображаться корректно.
Дополнительную информацию про настройку Git можно посмотреть по ссылке.
7.7. Файлы настроек Git
В Git существуют аж целых три файла для хранения настроек. Чтобы понять зачем столько и что это за настройки, давайте отобразим их содержимое. Сильно вдаваться в подробности мы не будем, но для общего понимания этот вопрос стоит разобрать.
Введем команду git config -l —show-origin. При этом консоль должна быть открыта в корне проекта — в папке StartJava:
// 1 - системные настройки
file:C:/Program Files/Git/etc/gitconfig diff.astextplain.textconv=astextplain
file:C:/Program Files/Git/etc/gitconfig filter.lfs.clean=git-lfs clean -- %f
file:C:/Program Files/Git/etc/gitconfig filter.lfs.smudge=git-lfs smudge -- %f
file:C:/Program Files/Git/etc/gitconfig filter.lfs.process=git-lfs filter-process
file:C:/Program Files/Git/etc/gitconfig filter.lfs.required=true
file:C:/Program Files/Git/etc/gitconfig http.sslbackend=openssl
file:C:/Program Files/Git/etc/gitconfig http.sslcainfo=C:/Program Files/Git/mingw64/etc/ssl/certs/ca-bundle.crt
file:C:/Program Files/Git/etc/gitconfig core.autocrlf=true
file:C:/Program Files/Git/etc/gitconfig core.fscache=true
file:C:/Program Files/Git/etc/gitconfig core.symlinks=false
file:C:/Program Files/Git/etc/gitconfig core.editor="C:\\Program Files\\Sublime Text\\sublime_text.exe"
file:C:/Program Files/Git/etc/gitconfig pull.rebase=false
file:C:/Program Files/Git/etc/gitconfig credential.helper=manager
file:C:/Program Files/Git/etc/gitconfig credential.https://dev.azure.com.usehttppath=true
file:C:/Program Files/Git/etc/gitconfig init.defaultbranch=master
// 2 - глобальные настройки
file:C:/Users/idesp/.gitconfig user.email=ВАШ_ЕМЭЙЛ
file:C:/Users/idesp/.gitconfig user.name=ВАШЕ_ИМЯ
file:C:/Users/idesp/.gitconfig core.editor='C:\Program Files\Sublime Text\sublime_text.exe\' --wait
file:C:/Users/idesp/.gitconfig core.quotepath=off
// 3 - локальные настройки
file:.git/config core.repositoryformatversion=0
file:.git/config core.filemode=false
file:.git/config core.bare=false
file:.git/config core.logallrefupdates=true
file:.git/config core.symlinks=false
file:.git/config core.ignorecase=true
Выведенную в терминале информацию я разбил на три части (по количеству файлов):
Системные настройки содержат общие для всех пользователей и их репозиториев значения (не забываем, что учетных записей пользователей в системе может быть больше одной)
Глобальные настройки содержат значения для одного конкретного пользователя и всех его репозиториев.
Локальные настройки хранят значения конкретного репозитория
Запомнить, какой файл с настройками когда использовать, несложно:
- Если в вашей системе один пользователь, то системные настройки вам ни к чему
- Если вы планируете для всех своих репозиториев использовать одни и те же параметры, то подойдут глобальные настройки
- Если для какого-то репозитория необходимо установить свои параметры, отличные от других, то используйте локальные настройки
Исходя из всего выше сказанного, нам подходят глобальные настройки. Если нужно будет в будущем внести какие-то отличные от глобальных настроек параметры, то вы всегда сможете воспользоваться локальными настройками.
8. Установка Octotree
Для удобной навигации по файлам на GitHub установим расширение для браузера — Octotree: перейдите на сайт и выберите версию под используемый вами браузер.
Откроется магазин с расширениями для установки Octotree.
После установки плагина на GitHub с левой стороны появится боковая панель с отображением всех файлов и папок, которые есть в текущем репозитории. Выглядеть это может примерно так:
Это расширение поможет значительно упростить навигацию по файлам и папкам, которые будут представлены в виде дерева, как это обычно бывает в файловых системах.
Вместо Octotree, для навигации по файлам, вы можете использовать встроенную в GitHub боковую панель, которая отобразится как только в вашем удаленном репозитории появится и будет открыт хотя бы один файл.
Заключение
В этой вводной статье мы рассмотрели основы СКВ, их виды, а также создали аккаунт на GitHub и выполнили установку и настройку Git. В следующей публикации мы подробно рассмотрим основные команды Git, которые позволят вам начать с ней работать.
Ниже в таблице перечислены ключевые команды статьи.
Оцените статью, если она вам понравилась!
Содержание
- Связывание учетной записи GitHub или Google с учетной записью Майкрософт
- Связывание учетной записи GitHub
- Советы по устранению неполадок со связыванием учетной записи GitHub
- Распространенные проблемы, связанные со входом
- Связывание учетной записи Google
- Что делать, если у меня уже есть учетная запись Майкрософт?
- Советы по устранению неполадок со связыванием учетной записи Google
- Другие сценарии
- Работа с учетными записями GitHub в Visual Studio Work with GitHub accounts in Visual Studio
- Добавление общедоступных учетных записей GitHub Adding public GitHub accounts
- Добавление учетных записей GitHub Enterprise Adding GitHub enterprise accounts
- Настройка и конфигурация учетной записи
- Доступ по SSH
- Ваш аватар
- Ваши почтовые адреса
- Двухфакторная аутентификация
- Первоначальная настройка Git
- Имя пользователя
- Выбор редактора
- Настройка ветки по умолчанию
- Проверка настроек
- Приступая к работе с Git в подсистеме Windows для Linux Get started using Git on Windows Subsystem for Linux
- Git можно установить в Windows и на WSL Git can be installed on Windows AND on WSL
- Установка Git Installing Git
- Настройка файла конфигурации Git Git config file setup
- Установка диспетчера учетных данных Git Git Credential Manager setup
- Добавление файла игнорирования Git Adding a Git Ignore file
- Git и VS Code Git and VS Code
- Окончания строк Git Git line endings
Связывание учетной записи GitHub или Google с учетной записью Майкрософт
Связывание учетной записи GitHub
Поддержка удостоверения GitHub позволяет использовать существующую учетную запись GitHub как учетные данные для новой или существующей учетной записи Майкрософт, если вы связываете учетную запись GitHub с учетной записью Майкрософт.
Когда вы входите с помощью учетных данных GitHub, Майкрософт проверяет, совпадают ли адреса электронной почты, сопоставленные с вашей учетной записью GitHub, с адресами электронной почты, которые используются в существующей личной или корпоративной учетной записи Майкрософт. Если обнаруживается совпадение с адресом для вашей корпоративной учетной записи, вместо входа в учетную запись GitHub будет предложено войти в корпоративную учетную запись. Если обнаруживается совпадение с адресом для личной учетной записи, ваша учетная запись GitHub будет добавлена как метод входа в эту личную учетную запись.
Когда учетные данные для учетных записей GitHub и Майкрософт будут связаны, вы сможете использовать единые данные для входа везде, где используется личная учетная запись Майкрософт, например на сайтах Azure, в приложениях Office и на консоли Xbox. Эти учетные записи можно также использовать для гостевого входа в Azure Active Directory под учетной записью Майкрософт при условии, что адрес электронной почты совпадает с адресом в приглашении.
Советы по устранению неполадок со связыванием учетной записи GitHub
Ниже приведены некоторые проблемы, которые могут появиться после того, как вы свяжете учетные записи GitHub и Майкрософт.
Распространенные проблемы, связанные со входом
Вы можете восстановить свою учетную запись GitHub, перейдя в » Сброс пароля». Кроме того, вы можете восстановить учетную запись, связанную с GitHub, указав адрес электронной почты в учетной записи GitHub на странице восстановление учетной записи.
Если у вас нет других учетных данных от своей учетной записи Майкрософт (таких как пароль, приложение Authenticator или ключ безопасности), вы можете восстановить учетную запись Майкрософт с помощью привязанного к ней адреса электронной почты. Чтобы приступить к работе, перейдите к разделу восстановление учетной записи. К учетной записи понадобится добавить пароль, чтобы у нас была возможность предоставить вам доступ к ней в будущем.
Введите адрес электронной почты от учетной записи GitHub, который вы выбрали при создании учетной записи Майкрософт, связанной с GitHub. Вам будет предложено найти и отправить вам сообщение для входа в службу GitHub. Или, если на странице входа есть ссылка » Параметры входа «, используйте кнопку » войти с помощью GitHub «, показанную после щелчка этой ссылки.
Не все продукты корпорации Майкрософт могут получить доступ к GitHub.com со своей страницы входа. Например, к таким продуктам относятся консоли Xbox. Вместо этого, если вы введете адрес электронной почты от связанной учетной записи GitHub, мы отправим на этот адрес код, чтобы удостовериться, что это действительно вы. Вы по-прежнему будете входить в ту же учетную запись, но для этого будет использоваться другой метод входа.
Совсем нет. Это действие не изменило ваш пароль от GitHub. Вы просто добавили другой способ входа в свою учетную запись Майкрософт. Каждый раз, когда вы входите в систему с помощью своего адреса электронной почты, мы предложим вам возможность войти в свою учетную запись Майкрософт или перейти в GitHub для входа. Если вам нужно добавить пароль, настоятельно рекомендуется, чтобы он отличался от пароля для вашей учетной записи GitHub.
Примечание: Связывание удостоверения GitHub с учетной записью Майкрософт не дает корпорации Майкрософт доступ к какому-либо коду. Когда таким приложениям, как Azure DevOps и Visual Studio, потребуется доступ к вашим репозиториям кода, вы увидите запрос на предоставление своего разрешения для такого доступа.
Связывание учетной записи Google
Если вы подписались на новую личную службу Майкрософт с адресом электронной почты @gmail. com, Майкрософт предложит вам возможность использовать учетные данные своей учетной записи Google для создания учетной записи Майкрософт. Вы получите все функции учетной записи и безопасности Microsoft, с помощью которых вы уже используете имя пользователя и пароль.
На начальном этапе не все пользователи, которые хотят создать учетную запись Майкрософт с помощью @gmail. com адрес электронной почты будет предлагать этот вариант. Вы по-прежнему можете использовать электронную почту @gmail. com, и мы просто попросим вас создать новый пароль.
Что делать, если у меня уже есть учетная запись Майкрософт?
При вводе имени пользователя учетной записи (адрес электронной почты, номер телефона или псевдоним Skype) мы сможем найти эту учетную запись и Показать параметры учетных данных (из приложения для проверки подлинности в пароль учетной записи Майкрософт). В настоящее время вы не можете добавить Google в качестве учетных данных для существующей учетной записи.
Советы по устранению неполадок со связыванием учетной записи Google
Вы можете восстановить учетную запись Google, перейдя к сбросу пароля. Вы также можете восстановить учетную запись, связанную с Google, введя адрес электронной почты своей учетной записи Google на странице восстановление учетной записи.
У всех бывают неудачные дни и иногда веб-службы перестают работать правильно. Если приложение Google или Gmail недоступно, это означает, что при попытке войти в accounts.google.com может появиться страница с сообщением об ошибке. В этом случае вы можете использовать функцию восстановления учетной записи выше, чтобы добавить пароль для учетной записи Майкрософт, чтобы вы не запрашивали вход в службу Google автоматически. Перебои в работе редко длятся очень долго, поэтому вы можете попробовать войти в службу через 15-30 минут, чтобы проверить, была ли устранена проблема.
Если у вас нет других учетных данных от своей учетной записи Майкрософт (таких как пароль, приложение Authenticator или ключ безопасности), вы можете восстановить учетную запись Майкрософт с помощью привязанного к ней адреса электронной почты. Чтобы приступить к работе, перейдите к разделу восстановление учетной записи. К учетной записи понадобится добавить пароль, чтобы у нас была возможность предоставить вам доступ к ней в будущем.
Введите адрес электронной почты учетной записи Google, который вы указали при создании учетной записи Майкрософт. Мы найдем вашу учетную запись и перенаправим на веб-страницу Google, чтобы вы могли выполнить вход. Если на странице входа есть ссылка Варианты входа, воспользуйтесь кнопкой Войти с помощью Google, которая появится после перехода по этой ссылке.
Не все продукты Майкрософт могут получить доступ к Google.com со страницы входа, например на компьютерах с Windows во время настройки или консолей Xbox 360. Вместо этого, если вы введете адрес электронной почты от связанной учетной записи Google, мы отправим на этот адрес код, чтобы удостовериться, что это действительно вы. Вы по-прежнему будете входить в ту же учетную запись, но для этого будет использоваться другой метод входа.
Совсем нет. Это действие не изменило ваш пароль от Google. Вы просто добавили другой способ входа в свою учетную запись Майкрософт. Всякий раз, когда вы входите в систему с помощью своего адреса электронной почты, мы предложим вам возможность войти в свою учетную запись Майкрософт или перейти в Google, чтобы войти в систему. Если вам нужно добавить пароль, настоятельно рекомендуется, чтобы он отличался от пароля учетной записи Google.
Другие сценарии
Без проблем. Просто скачайте приложение и войдите с помощью своего адреса электронной почты. Если вы входите в систему с помощью адреса электронной почты, вам будет предложено выбрать приложение для проверки подлинности или Google в качестве учетных данных.
Из-за ограничений безопасности Microsoft считает, что в Google используется Однофакторная проверка подлинности, даже если у вас включена двухфакторная проверка подлинности. Таким образом, понадобится снова пройти проверку подлинности для учетной записи Майкрософт.
Каждый раз, когда вы используете для входа псевдоним учетной записи (адрес электронной почты, номер телефона, логин в Skype), мы показываем вам все методы входа для вашей учетной записи. Если вы не видите Google там, значит вы еще не настроили его.
Источник
Работа с учетными записями GitHub в Visual Studio Work with GitHub accounts in Visual Studio
Если у вас есть общедоступная учетная запись GitHub или GitHub Enterprise, вы можете добавить ее в цепочку ключей Visual Studio. If you have a public GitHub or GitHub Enterprise account, you can add it to your Visual Studio keychain. После добавления учетной записи вы сможете использовать преимущества интеграции платформы, создавая репозитории GitHub и обращаясь к ним прямо из Visual Studio. After you add your account, you’ll be able to take advantage of the platform integration by accessing and creating GitHub repositories, right from Visual Studio.
Добавление общедоступных учетных записей GitHub Adding public GitHub accounts
Вы можете добавить общедоступную учетную запись GitHub, если вы уже вошли в Visual Studio с рабочей или учебной учетной записью Майкрософт. You can add your public GitHub account if you’re already signed in to Visual Studio with a Microsoft account, or a work or school account.
Щелкните значок с вашими инициалами в правом верхнем углу среды Visual Studio. Select the icon with your initials in the upper-right corner of the Visual Studio environment. Затем выберите Параметры учетной записи… для управления учетными записями. Then, select Account settings. to manage your accounts. Диалоговое окно «Параметры учетной записи» также можно открыть, выбрав пункт меню Файл > Параметры учетной записи. You can also open the Account Settings dialog by going to File > Account Settings.
В подменю Все учетные записи щелкните значок «плюс», чтобы добавить учетную запись, и выберите GitHub. Under the All Accounts submenu, select the plus sign to add an account, and select GitHub.
Вы будете перенаправлены в браузер, в котором можно выполнить вход с использованием учетных данных GitHub. You’ll be redirected to the browser, where you can sign in with your GitHub credentials. После входа вы получите сообщение об успешном выполнении входа в браузере и сможете вернуться в Visual Studio. After you sign in, you’ll get a success window in the browser, and you can return to Visual Studio.
В подменю Все учетные записи будут представлены обе учетные записи. You’ll have both accounts present in your All Accounts submenu.
Если вы еще не вошли в Visual Studio с другой учетной записью, щелкните ссылку Войти в правом верхнем углу среды Visual Studio. If you’re not already signed in to Visual Studio with a different account,select the Sign in link in the upper-right corner of the Visual Studio environment. Диалоговое окно «Параметры учетной записи» также можно открыть, выбрав пункт меню Файл > Параметры учетной записи. You can also open the Account Settings dialog by going to File > Account Settings. Затем следуйте приведенным выше инструкциям, чтобы добавить учетную запись GitHub. Then, follow the instructions above to add your GitHub account.
Добавление учетных записей GitHub Enterprise Adding GitHub enterprise accounts
По умолчанию в Visual Studio включены только общедоступные учетные записи GitHub. By default, Visual Studio only has public GitHub accounts enabled.
Чтобы включить учетные записи GitHub Enterprise, выберите Инструменты > Параметры и найдите раздел параметров Учетные записи. To enable GitHub enterprise accounts, go to Tools > Options and search for the Accounts options.
Затем установите флажок Включить учетные записи GitHub Enterprise Server. Then, check the box to Include GitHub Enterprise Server accounts. В следующий раз при переходе к параметрам учетной записи и при попытке добавить учетную запись GitHub вы увидите варианты действий для GitHub и GitHub Enterprise. The next time you go to your Account Settings and try to add a GitHub account, you’ll see options for both GitHub and GitHub Enterprise.
После ввода адреса сервера GitHub Enterprise выберите Войти с помощью браузера. After you enter your GitHub Enterprise server address, select Sign in with your browser. После этого вы сможете войти в систему с учетными данными GitHub Enterprise. There, you can sign in using your GitHub Enterprise credentials.
Источник
GitHub — это крупнейшее хранилище Git репозиториев, а так же центр сотрудничества для миллионов разработчиков и проектов. Огромный процент всех репозиториев хранится на GitHub, а многие проекты с открытым исходным кодом используют его ради Git хостинга, баг-трекера, рецензирования кода и других вещей. Так что, пока всё это не часть открытого Git проекта, наверняка вы захотите, или вам придётся взаимодействовать с GitHub при профессиональном использовании Git.
Эта глава про эффективное использование GitHub. Мы разберём регистрацию, управление учётной записью, создание и использование Git репозиториев, как вносить вклад в чужие проекты и как принимать чужой вклад в собственный проект, а так же программный интерфейс GitHub и ещё множество мелочей, который облегчат вам жизнь.
Если вас не интересует использование GitHub для размещения собственных проектов или сотрудничества с другими проектами, размещёнными на нём, вы можете смело перейти к Инструменты Git.
Настройка и конфигурация учетной записи
Первым делом нужно создать бесплатную учётную запись. Просто зайдите на https://github.com, выберите имя которое ещё не занято, укажите адрес электронной почты и пароль, а затем нажмите большую зелёную кнопку «Sign up for GitHub».
Далее вы попадёте на страницу с тарифными планами, её пока можно проигнорировать. GitHub вышлет письмо для проверки вашего электронного адреса. Сделайте этот шаг, он достаточно важный (как мы увидим далее).
GitHub предоставляет почти все свои функции для бесплатных учётных записей, за исключением некоторых расширенных возможностей. Платные тарифы GitHub включают расширенные инструменты и функции, а также увеличенные лимиты на бесплатные услуги, но мы не будем рассматривать их в этой книге. Для того, чтобы получить более подробную информацию об имеющихся тарифах и их сравнение, посетите https://github.com/pricing.
Клик на расположенном в верхнем левом углу экрана логотипе, изображающем гибрид кота и осьминога (его называют осьмикот), откроет панель управления. Теперь все готово для работы с GitHub.
Доступ по SSH
На данный момент вы можете подключаться к репозиториям Git используя протокол https:// авторизуясь при помощи только что созданного логина и пароля. Однако для того чтобы просто клонировать публично доступный проект, вам необязательно авторизовываться на сайте, но тем не менее, только что созданный аккаунт понадобится в то время, когда вы захотите загрузить (push) сделанные вами изменения.
Если же вы хотите использовать SSH доступ, в таком случае вам понадобится добавить публичный SSH ключ. (Если же у вас нет публичного SSH ключа, вы можете его сгенерировать) Откройте настройки вашей учётной записи при помощи ссылки, расположенной в верхнем правом углу окна:
Выберите секцию слева под названием «Ключи SSH» («SSH keys»).
Затем нажмите на кнопку «Добавить ключ SSH» («Add an SSH key»), задайте имя ключа, а так же скопируйте и вставьте сам публичный ключ из
/.ssh/id_rsa.pub (ну или как бы у вас не назывался этот файл) в текстовое поле, затем нажмите «Добавить ключ» («Add key»).
Задавайте такое имя SSH ключа, которое вы в состоянии запомнить. Называйте каждый из добавляемых ключей по-разному (к примеру «Мой Ноутбук» или «Рабочая учётная запись»), для того чтобы в дальнейшем, при аннулировании ключа быть уверенным в правильности своего выбора.
Ваш аватар
Следующий шаг, если хотите — замена аватара, который был сгенерирован для вас, на вами выбранный аватар. Пожалуйста зайдите во вкладку «Профиль» («Profile»), она расположена над вкладкой «Ключи SSH» и нажмите «Загрузить новую картинку» («Upload new picture»).
Выберем логотип Git с жёсткого диска и отредактируем картинку под желаемый размер.
После загрузки каждый сможет увидеть ваш аватар рядом с вашим именем пользователя.
Если вы используете такой популярный сервис как Gravatar (часто используется для учётных записей WordPress), тот же самый аватар будет использован «по умолчанию».
Ваши почтовые адреса
GitHub использует ваш почтовый адрес для привязки ваших Git коммитов к вашей учётной записи. Если вы используете несколько почтовых адресов в своих коммитах и хотите, чтобы GitHub работал с ними корректно, то вам нужно будет добавить все используемые почтовые адреса в секцию под названием «Почтовые адреса» («Emails»), расположенную на вкладке «Администрирование» («Admin»).
Как можно видеть на рисунке Почтовые адреса, у почтовых адресов имеются несколько состояний. Верхний почтовый адрес подтверждён и является основным для пользователя, это тот самый адрес, куда будут направляться оповещения, а также остальные уведомления. Второй адрес тоже подтверждён, и так же может быть назначен в качестве основного. Последний адрес не подтверждён, это значит, что вы не можете использовать его в качестве основного и получать на него уведомления. При отправке коммита в любой из репозиториев, GitHub распознает один из указанных почтовых адресов и автоматически привяжет этот коммит к вашей учетной записи.
Двухфакторная аутентификация
В качестве дополнительной меры безопасности, вы можете настроить «Двухфакторную аутентификацию» («Two-factor Authentication» или «2FA»). Двухфакторная аутентификация — механизм, который становится все более и более популярным методом по снижению риска скомпрометировать вашу учётную запись в ситуации, когда пароль от вашей учётной записи, по тем или иным причинам, стал известен злоумышленникам. Активация этого механизма заставит GitHub запрашивать у вас оба пароля при авторизации, поэтому даже в ситуациях, когда ваш основной пароль скомпрометирован, злоумышленник все равно не получит доступ к вашей учётной записи.
Вы сможете найти настройку «Двухфакторной аутентификации» («Two-factor Authentication») в секции «Безопасность» («Security») вкладки «Настройка учётной записи» («Account settings»).
При нажатии на кнопку «Настроить двухфакторную аутентификацию» («Set up two-factor authentication») вы будете перенаправлены на страницу, где вам нужно будет настроить использование мобильного приложения для генерации вторичного кода проверки (так называемый «одноразовый пароль основанный на времени»), так же можно настроить GitHub таким образом, чтобы он отправлял вам СМС с кодом в момент, когда вам нужно авторизоваться на сайте.
После того, как вы выберете предпочитаемый вами метод и выполните предлагаемые инструкции, ваша учётная запись будет в большей безопасности, и вам будет предоставляться дополнительный код во время авторизации на сайте.
Источник
Первоначальная настройка Git
Теперь, когда Git установлен в вашей системе, самое время настроить среду для работы с Git под себя. Это нужно сделать только один раз — при обновлении версии Git настройки сохранятся. Но, при необходимости, вы можете поменять их в любой момент, выполнив те же команды снова.
Чтобы посмотреть все установленные настройки и узнать где именно они заданы, используйте команду:
Имя пользователя
Первое, что вам следует сделать после установки Git — указать ваше имя и адрес электронной почты. Это важно, потому что каждый коммит в Git содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена:
Многие GUI-инструменты предлагают сделать это при первом запуске.
Выбор редактора
Теперь, когда вы указали своё имя, самое время выбрать текстовый редактор, который будет использоваться, если будет нужно набрать сообщение в Git. По умолчанию Git использует стандартный редактор вашей системы, которым обычно является Vim. Если вы хотите использовать другой текстовый редактор, например, Emacs, можно проделать следующее:
В системе Windows следует указывать полный путь к исполняемому файлу при установке другого текстового редактора по умолчанию. Пути могут отличаться в зависимости от того, как работает инсталлятор.
В случае с Notepad++, популярным редактором, скорее всего вы захотите установить 32-битную версию, так как 64-битная версия ещё не поддерживает все плагины. Если у вас 32-битная Windows или 64-битный редактор с 64-битной системой, то выполните следующее:
Vim, Emacs и Notepad++ — популярные текстовые редакторы, которые часто используются разработчиками как в Unix-подобных системах, таких как Linux и Mac, так и в Windows. Если вы используете другой редактор или его 32-битную версию, то обратитесь к разделу Команды git config core.editor за дополнительными инструкциями как использовать его совместно с Git.
В случае, если вы не установили свой редактор и не знакомы с Vim или Emacs, вы можете попасть в затруднительное положение, когда какой-либо из них будет запущен. Например, в Windows может произойти преждевременное прерывание команды Git при попытке вызова редактора.
Настройка ветки по умолчанию
Например, чтобы установить имя main для вашей ветки по умолчанию, выполните следующую команду:
Проверка настроек
Некоторые ключи (названия) настроек могут отображаться несколько раз, потому что Git читает настройки из разных файлов (например, из /etc/gitconfig и
/.gitconfig ). В таком случае Git использует последнее значение для каждого ключа.
Также вы можете проверить значение конкретного ключа, выполнив git config :
Так как Git читает значение настроек из нескольких файлов, возможна ситуация когда Git использует не то значение что вы ожидали. В таком случае вы можете спросить Git об origin этого значения. Git выведет имя файла, из которого значение для настройки было взято последним:
Источник
Приступая к работе с Git в подсистеме Windows для Linux Get started using Git on Windows Subsystem for Linux
Git — это наиболее часто используемая система управления версиями. Git is the most commonly used version control system. С помощью Git вы можете отслеживание изменений, внесенных в файлы, поэтому у вас есть запись о том, что было сделано, и возможность вернуться к более ранним версиям файлов при необходимости. With Git, you can track changes you make to files, so you have a record of what has been done, and have the ability to revert to earlier versions of the files if needed. Кроме того, Git упрощает совместную работу, позволяя объединить изменения, внесенные несколькими людьми, в один источник. Git also makes collaboration easier, allowing changes by multiple people to all be merged into one source.
Git можно установить в Windows и на WSL Git can be installed on Windows AND on WSL
Важно. при включении WSL и установке дистрибутива Linux устанавливается новая файловая система, отделенная от Windows NTFS C:. диск на компьютере. An important consideration: when you enable WSL and install a Linux distribution, you are installing a new file system, separated from the Windows NTFS C:\ drive on your machine. В Linux буквы дисков не задаются. In Linux, drives are not given letters. Они получают точки подключения. They are given mount points. Корневой каталог файловой системы / — это точка подключения корневого раздела или папки в случае с WSL. The root of your file system / is the mount point of your root partition, or folder, in the case of WSL. Не все в разделе / — это один и тот же диск. Not everything under / is the same drive. Например, на моем ноутбуке я установил две версии Ubuntu (20,04 и 18,04), а также Debian. For example, on my laptop, I’ve installed two version of Ubuntu (20.04 and 18.04), as well as Debian. Если открыть эти дистрибутивы, выберите корневой каталог с командой cd
Дистрибутив Linux Linux distro | Путь Windows к домашней папке Access Windows Path to access home folder |
---|---|
Ubuntu 20.04 Ubuntu 20.04 | \\wsl$\Ubuntu-20.04\home\username |
Ubuntu 18.04 Ubuntu 18.04 | \\wsl$\Ubuntu-18.04\home\username |
Debian Debian | \\wsl$\Debian\home\username |
Windows PowerShell Windows PowerShell | C:\Users\username |
Необходимо установить Git в каждой файловой системе, с которой планируется использовать. You will need to install Git on each file system that you intend to use it with.
Установка Git Installing Git
Git уже установлен с большей частью подсистемы Windows для дистрибутивов Linux, однако может потребоваться обновление до последней версии. Git comes already installed with most of the Windows Subsystem for Linux distributions, however, you may want to update to the latest version. Вам также потребуется настроить файл конфигурации Git. You also will need to set up your git config file.
Для получения последней стабильной версии Git в Ubuntu/Debian введите команду: For the latest stable Git version in Ubuntu/Debian, enter the command:
Настройка файла конфигурации Git Git config file setup
Чтобы настроить файл конфигурации Git, откройте командную строку, в которой вы работаете, и задайте свое имя с помощью этой команды (заменив «Ваше имя» на имя пользователя Git): To set up your Git config file, open a command line for the distribution you’re working in and set your name with this command (replacing «Your Name» with your Git username):
Задайте свою электронную почту с помощью этой команды (заменив » youremail@domain.com » на адрес электронной почты, используемый в вашей учетной записи Git): Set your email with this command (replacing «youremail@domain.com» with the email you use on your Git account):
Если у вас еще нет учетной записи Git, вы можете зарегистрироваться на сайте GitHub. If you don’t yet have a Git account, you can sign-up for one on GitHub. Если вы никогда не использовали Git, обратитесь к руководствам по GitHub. Они помогут вам приступить к работе. If you’ve never worked with Git before, GitHub Guides can help you get started. Если вам нужно изменить файл конфигурации Git, это можно сделать с помощью встроенного текстового редактора, такого как nano: nano
Установка диспетчера учетных данных Git Git Credential Manager setup
Диспетчер учетных данных Git позволяет выполнять проверку подлинности на удаленном сервере Git, даже если имеется сложная модель проверки подлинности, например двухфакторная проверка подлинности, Azure Active Directory или использование удаленных URL-адресов SSH, требующих пароля ключа SSH для каждой принудительной отправки Git. Git Credential Manager enables you to authenticate a remote Git server, even if you have a complex authentication pattern like two-factor authentication, Azure Active Directory, or using SSH remote URLs that require an SSH key password for every git push. Диспетчер учетных данных Git интегрируется в поток проверки подлинности для таких служб, как GitHub, и после проверки подлинности в поставщике услуг размещения запрашивает новый маркер проверки подлинности. Git Credential Manager integrates into the authentication flow for services like GitHub and, once you’re authenticated to your hosting provider, requests a new authentication token. Затем маркер сохраняется в диспетчере учетных данных Windowsв безопасном режиме. It then stores the token securely in the Windows Credential Manager. В дальнейшем диспетчер учетных данных Git можно использовать для взаимодействия с поставщиком услуг размещения без повторной проверки подлинности. After the first time, you can use git to talk to your hosting provider without needing to re-authenticate. Он просто обратится к маркеру в диспетчере учетных данных Windows. It will just access the token in the Windows Credential Manager.
Чтобы настроить диспетчер учетных данных Git для использования с дистрибутивом WSL, откройте дистрибутив и введите такую команду: To set up Git Credential Manager for use with a WSL distribution, open your distribution and enter this command:
Теперь при всех операциях Git, выполняемых в дистрибутиве WSL, будет использоваться диспетчер учетных данных. Now any git operation you perform within your WSL distribution will use the credential manager. Если у вас уже есть кэшированные учетные данные для узла, к ним будет выполняться доступ из диспетчера учетных данных. If you already have credentials cached for a host, it will access them from the credential manager. В противном случае отобразится диалоговое окно с запросом учетных данных, даже если вы работаете в консоли Linux. If not, you’ll receive a dialog response requesting your credentials, even if you’re in a Linux console.
Если вы используете ключ GPG для защиты подписывания кода, вам может потребоваться связать ключ GPG с вашим адресом электронной почты GitHub. If you are using a GPG key for code signing security, you may need to associate your GPG key with your GitHub email.
Добавление файла игнорирования Git Adding a Git Ignore file
Git и VS Code Git and VS Code
Visual Studio Code поставляется со встроенной поддержкой Git, включая вкладку управления исходным кодом, в которой будут отображаться изменения и работать с различными командами Git. Visual Studio Code comes with built-in support for Git, including a source control tab that will show your changes and handle a variety of git commands for you. Дополнительные сведения о поддержке Git VS Code. Learn more about VS Code’s Git support.
Окончания строк Git Git line endings
Если вы работаете с одной и той же папкой репозитория между Windows, WSL или контейнером, обязательно настройте согласованные окончания строк. If you are working with the same repository folder between Windows, WSL, or a container, be sure to set up consistent line endings.
Источник
tl;dr For Windows when you need a different account.
I had to work with a new GitHub account recently and needed to add a separate account. I worked through that process and managed to get things to work with a Personal Access Token (PAT). Since I have 2FA (2 Factor Authentication) on my GitHub account, my user/password doesn’t ever work in the command line.
Once I was done, I wanted to change back. I had cloned a new repo, made a couple changes, and then when I went to push, I got:
sjonesdkranch is the wrong account. I want to use my way0utwest account, but despite entering a new PAT, it wouldn’t save. Since I use SQL Source Control, this was a pain as the terminal access isn’t there. I googled around and eventually realized that my generic git credentials are stored in the Windows Credential Manager, not the Git config files.
This is in the Control Panel –> User Accounts –> Credential Manager (shown here)
I first went to the Web Credentials, as I saw two https://www.github.com entries. This was incorrect, because I don’t want the web, I want the git:github.com entry, which is under the Windows Credentials section.
You can see I have a lot of Git stuff, but I want the GitHub.com one.
I expanded this down and then clicked Edit.
This had been created by the PAT I’d entered awhile ago. I had saved the one I generated today in my password manager and entered it in this dialog.
I saved it and my git push worked, both from the CLI and SQL Source Control.
Good reminder. Windows, especially Win10, has started to save and use credentials in new ways and lots of software is integrating with it in those ways.
About way0utwest
Editor, SQLServerCentral
This entry was posted in Blog and tagged Git, security, syndicated. Bookmark the permalink.