Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Работа с удаленными репозиториями #397

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
113 changes: 113 additions & 0 deletions Help.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
![Logo](logo.png)
# Работа с Git

## 1. Проверка наличия установленного Git
В терминале выполнить команду
```
git --version
```
Если Git установлен появится сообщение с информацией о версии программы, иначе будет сообщение об ошибке.

## 2. Установка Git
Загружаем последнюю версию программы с [сайта](https://git-scm.com/downloads) и устанавливаем с настройками по умолчанию.

## 3. Настройка Git
Первое, что вам следует сделать после установки Git — указать ваше имя и адрес электронной почты. Это важно, потому что каждый коммит в Git содержит эту информацию, и она включена в коммиты, передаваемые вами, и не может быть далее изменена:
```
git config --global user.name <name>
git config --global user.email <email>
```

## 4. Инициализация репозитория
Для создания репозитория необходимо выполнить команду *git init* в папке с репозиторием и у Вас создаться репозиторий (появится скрытая папка .git)

## 5. Запись изменений в репозиторий

* Определение состояние файлов

Основной инструмент, используемый для определения, какие файлы в каком состоянии находятся — это команда `git status`

* Отслеживание новых файлов

Для того чтобы начать отслеживать (добавить под версионный контроль) новый файл, используется команда `git add`

* Создание коммитов

Для того, чтобы создать коммит(сохранение) необходимо выполнить команду *git commit*. Выполняется она так:
```
git commit -m "Message"
```

## 6. Просмотр истории коммитов
После того, как вы создали несколько коммитов или же клонировали репозиторий с уже существующей историей коммитов, вероятно вам понадобится возможность посмотреть что было сделано — историю коммитов. Одним из основных и наиболее мощных инструментов для этого является команда `git log`

## 7. Перемещение между сохранениями (коммитами)
Команда `git checkout` используется для переключения веток и выгрузки их содержимого в рабочий каталог.

## 8. Игнорирование файлов
Зачастую, у вас имеется группа файлов, которые вы не только не хотите автоматически добавлять в репозиторий, но и видеть в списках неотслеживаемых. К таким файлам обычно относятся автоматически генерируемые файлы (различные логи, результаты сборки программ и т. п.). В таком случае, вы можете создать файл `.gitignore`

## 9. Создание веток в Git
По умолчанию имя основной ветки в Git - **master**.
Создать ветку можно командой:
```bash
git branch <имя новой ветки>
```

## 10. Слияние веток и разрешение конфликтов

* Слияние веток

Для слияния веток необходимо перейти на ветку *master/main* и выполнить следующую команду:
```bash
git merge <имя ветки которую хотим объединить>
```

* Разрешение конфликтов

Иногда при объединении веток происходит конфликт. Это может быть в том случае, если информация Чистовика отличается от Черновика. Чтобы решить конфликт, **Visual Studio Code** предложит выбрать одну из опций - *Принять текущее изменение* или *входящее изменение*.

После решения конфликта необходимо выполнить коммит слияния. Например, следующим образом:
```bash
git commit -am "Решили конфликт при слиянии веток"
```

## 11. Удаление веток

Чтобы удалить ветку, для начала перейдем в ветку *master* командой:
```bash
git switch master
```
и выполнии команду:
```bash
git branch -d <имя_ветки>
```

Для того, чтобы принудительно удалить ветку в которой находимся указываем параметр *-D*

## 12. Работа с удаленными репозиториями

* Клонирование репозитория (внешнего)

Чтобы выполнить клонирование выполняем следующую команду:
```bash
git clone <url репозитория>
```

* Получение информации с внешнего на локальный репозиторий

Для того, чтобы получить изменения из удаленного репозитория и внести их на локальный используем команду `git pull`

* Отправление информации с локального репозитория на внешний

Чтобы выполнить данную операцию воспользуемся командой `git push`

* Что такое pull request?

*pull request* — предложение изменения кода в чужом репозитории.

Вы делаете форк чужого репозитория (который иногда и сам может быть форком) → производите изменения в своём форке → посредством pull request предлагаете изменения владельцам репозитория, чей форк Вы сделали.

* Создание ответвлений (fork)

Если вы хотите вносить свой вклад в уже существующие проекты, в которых у нас нет прав на внесения изменений путём отправки (push) изменений, вы можете создать своё собственное ответвление (fork) проекта. Это означает, что GitHub создаст вашу собственную копию проекта, данная копия будет находиться в вашем пространстве имён и вы сможете легко делать изменения путём отправки (push) изменений.