108 lines
4.2 KiB
Markdown
108 lines
4.2 KiB
Markdown
# Инструкция по настройке Git для GitHub на Windows
|
||
|
||
## Примечание
|
||
|
||
Гайд предполагает, что имя пользователя на всех компьютерах - "student", а ваше имя - Иванов Иван.
|
||
|
||
## 1. Установка Git
|
||
Скачайте установщик с https://git-scm.com/download/win
|
||
Установите с настройками по умолчанию.
|
||
|
||
## 2. Базовая настройка
|
||
Откройте Git Bash:
|
||
|
||
```bash
|
||
git config --global user.name "Иван Иванов"
|
||
git config --global user.email "ваша_почта@example.com"
|
||
```
|
||
|
||
Конфигурация сохраняется в: `C:\Users\student\.gitconfig`
|
||
|
||
## 3. Генерация RSA SSH-ключа
|
||
**ВАЖНО: Если на компьютере уже есть SSH-ключи, переименуйте новый ключ, чтобы избежать конфликтов.**
|
||
|
||
Выполните команду:
|
||
```bash
|
||
ssh-keygen -t rsa -b 4096 -C "ваша_почта@example.com"
|
||
```
|
||
|
||
**Введите уникальное имя файла, например:**
|
||
- При запросе: `Enter file in which to save the key`
|
||
- Введите: `C:/Users/student/.ssh/id_rsa_ivan_ivanov`
|
||
|
||
**Далее:**
|
||
- При запросе: `Enter passphrase` - введите пароль
|
||
- При запросе: `Enter same passphrase again` - повторите пароль
|
||
|
||
**ПРИМЕЧАНИЕ: При вводе пароля символы не отображаются. Это нормально.**
|
||
|
||
## 4. Файл SSH config
|
||
Создайте/отредактируйте файл: `C:\Users\student\.ssh\config`
|
||
|
||
Добавьте конфигурацию:
|
||
```
|
||
Host github.com
|
||
HostName github.com
|
||
User git
|
||
IdentityFile ~/.ssh/id_rsa_ivan_ivanov # не забудьте изменить
|
||
IdentitiesOnly yes
|
||
```
|
||
|
||
## 5. Добавление публичного ключа на GitHub
|
||
1. Откройте файл: `C:\Users\student\.ssh\id_rsa_ivan_ivanov.pub`
|
||
2. Скопируйте всё содержимое
|
||
3. На GitHub: Settings → SSH and GPG keys → New SSH key
|
||
4. Вставьте ключ, добавьте название, сохраните
|
||
|
||
## 6. Проверка подключения
|
||
```bash
|
||
ssh -T git@github.com
|
||
```
|
||
При первом подключении введите пароль от SSH-ключа.
|
||
Если всё хорошо, то должно получиться похожее сообщение:
|
||
```
|
||
Hi ivan! You've successfully authenticated, but GitHub does not provide shell access.
|
||
```
|
||
|
||
## 7. Работа с репозиториями
|
||
|
||
### Клонирование:
|
||
```bash
|
||
git clone git@github.com:username/repository.git
|
||
```
|
||
|
||
### Создание нового репозитория:
|
||
```bash
|
||
mkdir project-name
|
||
cd project-name
|
||
git init
|
||
git add .
|
||
git commit -m "Initial commit"
|
||
git branch -M main
|
||
git remote add origin git@github.com:username/repository.git
|
||
git push -u origin main
|
||
```
|
||
|
||
## 8. Проверка существующих ключей
|
||
Чтобы проверить, какие SSH-ключи уже есть в системе:
|
||
```bash
|
||
ls -la ~/.ssh/
|
||
```
|
||
|
||
## Файловые пути
|
||
- Приватный ключ: `C:\Users\student\.ssh\id_rsa_ivan_ivanov`
|
||
- Публичный ключ: `C:\Users\student\.ssh\id_rsa_ivan_ivanov.pub`
|
||
- Конфиг SSH: `C:\Users\student\.ssh\config`
|
||
- Конфиг Git: `C:\Users\student\.gitconfig`
|
||
|
||
## Безопасность
|
||
1. **Используйте уникальные имена для ключей** - это предотвратит перезапись существующих
|
||
2. **Никогда не передавайте приватные ключи** третьим лицам
|
||
3. Пароль обеспечивает защиту при компрометации файла ключа
|
||
4. Для смены пароля: `ssh-keygen -p -f ~/.ssh/id_rsa_ivan_ivanov`
|
||
|
||
## Примечания
|
||
- Если ключ с таким именем уже существует, создайте новый с другим именем
|
||
- Каждый хостинг можно настроить с отдельным ключом
|
||
- Проверьте правильность пути в файле `config`
|