feat: initial commit
This commit is contained in:
107
README.md
Normal file
107
README.md
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
# Инструкция по настройке 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`
|
||||||
Reference in New Issue
Block a user