From 4cd72ce63d8da3e623d313b20c5f6f22c838e58b Mon Sep 17 00:00:00 2001 From: Adelina Date: Mon, 2 Dec 2024 20:50:14 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=D0=B8=20=D1=81=D0=B2=D0=BE=D1=8E=20=D0=B8=D0=BD=D1=81=D1=82?= =?UTF-8?q?=D1=80=D1=83=D0=BA=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- git_new_instr.md | 106 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 git_new_instr.md diff --git a/git_new_instr.md b/git_new_instr.md new file mode 100644 index 0000000..8063a88 --- /dev/null +++ b/git_new_instr.md @@ -0,0 +1,106 @@ +# Инструкция по работе с GIT + +## Что такое Git ? + +Когда пишешь код, легко что-то сломать или испортить. Чтобы этого избежать, используют системы контроля версий для хранения истории версий кода. Git ― один из вариантов такой системы. + +## Настройка Git + +Откройте терминал и запустите команды: + +*git config --global user.name "My Name"* + +*git config --global user.email почта@example.com* + +Теперь каждое наше действие будет отмечено именем и почтой. Таким образом, пользователи всегда будут в курсе, кто отвечает за какие изменения — это вносит порядок. + + +## Основные команды Git + +1. **git init** + +Создать пустой репозиторий Git или вновь инициализировать существующий можно параметром init. При инициализации он создаст скрытую папку. В ней содержатся все объекты и ссылки, которые Git использует и создаёт в истории работы над проектом. + +2. **git status** + +Позволяет получить информацию от git о его текущем состоянии. + +3. **git add** + +Добавить отдельный файл в область подготовленных файлов можно параметром add с указанием имени файла. + +4. **git commit -m “message”** + +При создании коммита в репозитории можно добавить однострочное сообщение с помощью параметра commit с флагом -m. Само сообщение вводится непосредственно после флага, в кавычках. + +## Команды для работы с версиями + +1. **git log** + +Просматривать изменения, внесённые в репозиторий, можно с помощью параметра log. Он отображает список последних коммитов в порядке выполнения. + +2. **git checkout** + +Позволяет осуществлять переход от одного коммита к другому. + +3. **git checkout master** + +Позволит вернуться к актуальному состоянию и продолжить работу. + +4. **git diff** + +С помощью данной команды можно увидеть разницу между текущим файлом и закоммиченным файлом. + + +# Работа с ветками + +## Команды, используемые для работы с ветками: + +1. Чтобы вывести список всех имеющихся веток: +> git branch + +2. Чтобы создать новую ветку необходимо: +> git branch branch_name + +3. Чтобы переключиться между ветками: +> git checkout branch_name + +4. Чтобы слить ветки: +> git merge branch_name + +5. Чтобы удалить ветку: +> git branch -d branch_name + +6. Чтобы увидеть лог коммитов с визуализацией +между ними: +> git log -- graph + +# Конфликты +Конфликты возникают, когда одна и та же информация хранится в нескольких ветках, при их слиянии. +Чтобы разрешить конфликт необходимо выбрать окончательный вариант. + +# Дополнительная информация: +1. Удаление нужно делать с использованием маленькой d, так как это позволит удалить ветку только когда все исправно. +2. При слиянии веток ты должен находиться в ветке, *В КОТОРУЮ* хочешь добавить другую ветку. + +# Работа с удаленными репозиториями + +1. Основные команды + +* Позволяет склонировать внешний репозиторий по ссылке +> git clone ссылка на репозиторий + +* Позволяет скачать все из текущего репозитория и автоматически слить с нашей версией +> git pull + +* Позволяет отправить нашу версию репозитория на внешний +> git push + +## Как сделать pull request + +* Делаем _fork_ репозитория +* Делаем clone **СВОЕЙ** версии репозитория +* Создаем новую ветку и в **НЕЕ** вносим изменения +* Фиксируем изменения с помощью коммитов +* Отправляем свою версию в свой GitHub +* На сайте нажимаем кнопку *pull request* \ No newline at end of file