💻 Примеры: Введение в Git

К оглавлению урока

⚡ Минимальный рабочий пример

git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git init
echo "# My Project" > README.md
git add README.md
git status
git commit -m "Initial commit"
git log --oneline

Пример 1: Настройка Git и первый репозиторий

Перед началом работы необходимо один раз настроить Git — указать имя и email для коммитов.

# Настройка автора (один раз на компьютер)
git config --global user.name "Your Name"
git config --global user.email "you@example.com"

# Проверить настройки
git config --list

Создаём новую директорию и инициализируем репозиторий:

# Создать директорию и перейти в неё
mkdir my-project
cd my-project

# Инициализировать репозиторий
git init
# Вывод: Initialized empty Git repository in /path/my-project/.git/

# Убедиться, что директория .git создана
ls -la
# Должна появиться директория .git

Пример 2: Первый коммит

Создаём файл, добавляем его в staging area и фиксируем первый коммит.

# Создать файл README.md
echo "# My Project" > README.md

# Проверить статус — файл в состоянии untracked
git status
# Вывод:
# On branch master
# Untracked files:
#   (use "git add ..." to include in what will be committed)
#         README.md

# Добавить файл в staging area
git add README.md

# Статус изменился — файл готов к коммиту
git status
# Вывод:
# Changes to be committed:
#   new file:   README.md

# Создать первый коммит
git commit -m "Initial commit"
# Вывод: [master (root-commit) abc1234] Initial commit
#  1 file changed, 1 insertion(+)
#  create mode 100644 README.md

# Просмотреть историю
git log --oneline
# abc1234 Initial commit

Пример 3: Задание для закрепления из лекции

Создать репозиторий на GitHub, добавить, закоммитить и запушить из нового локального репозитория. Это решение из лекции:

# git_intro — решение из лекции
git init
echo "# test" >> README.md
git status
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:USERNAME/REPO_NAME.git
git push -u origin main
git log

Разбор каждой команды:

  • git init — создаёт новый локальный репозиторий.
  • echo "# test" >> README.md — создаёт файл README.md с первой строкой.
  • git status — проверяет текущее состояние (README.md появится в untracked).
  • git add README.md — добавляет файл в staging area.
  • git commit -m "first commit" — создаёт первый коммит.
  • git branch -M main — переименовывает ветку в main (современный стандарт).
  • git remote add origin git@github.com:USERNAME/REPO_NAME.git — связывает локальный репозиторий с GitHub.
  • git push -u origin main — первый push; флаг -u устанавливает upstream для последующих git push.
  • git log — выводит историю коммитов.

Пример 4: SSH-ключи для GitHub

Для работы по SSH необходимо добавить публичный ключ на GitHub. Просмотреть публичный ключ:

# Просмотреть публичный ключ (современный тип ed25519)
cat ~/.ssh/id_ed25519.pub

# Или RSA (классический)
cat ~/.ssh/id_rsa.pub

# Проверить подключение к GitHub
ssh -T git@github.com
# Успешный ответ: Hi username! You've successfully authenticated...
Никогда не публикуйте приватный ключ! Только id_ed25519.pub или id_rsa.pub (с расширением .pub) добавляется в GitHub. Файл без расширения — приватный ключ, он остаётся только у вас.