мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| soft:git [2026/02/19 14:29] – удалено - внешнее изменение (Дата неизвестна) A User Not Logged in | soft:git [2026/03/03 15:21] (текущий) – radi0dev | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ====== git ====== | ||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Представьте, | ||
| + | |||
| + | Git хранит снимки вашего проекта в специальном хранилище, | ||
| + | |||
| + | ===== Настройка ===== | ||
| + | |||
| + | {{fixme}} | ||
| + | |||
| + | ===== Создание репозитория ===== | ||
| + | |||
| + | <code bash> | ||
| + | # Создаёт новый локальный репозиторий с заданным именем | ||
| + | git init < | ||
| + | |||
| + | # Скачивает репозиторий вместе со всей его историей изменений | ||
| + | git clone < | ||
| + | </ | ||
| + | |||
| + | ===== Внесение изменений ===== | ||
| + | |||
| + | <code bash> | ||
| + | # Перечисляет все новые или изменённые файлы, которые нуждаются в фиксации | ||
| + | git status | ||
| + | |||
| + | # Показывает различия по внесённым изменениям в ещё не проиндексированных файлах | ||
| + | git diff | ||
| + | |||
| + | # Индексирует указанный файл для последующего коммита | ||
| + | git add < | ||
| + | |||
| + | # Показывает различия между проиндексированной и последней зафиксированной версиями файлов | ||
| + | git diff --staged | ||
| + | |||
| + | # Отменяет индексацию указанного файла, при этом сохраняет его содержимое | ||
| + | git reset < | ||
| + | |||
| + | # Фиксирует проиндексированные изменения и сохраняет их в историю версий | ||
| + | git commit -m "< | ||
| + | </ | ||
| + | |||
| + | ===== Операции с файлами ===== | ||
| + | |||
| + | <code bash> | ||
| + | # Удаляет конкретный файл из рабочей директории и индексирует его удаление | ||
| + | git rm < | ||
| + | |||
| + | # Убирает конкретный файл из контроля версий, | ||
| + | git rm --cached < | ||
| + | |||
| + | # Перемещает / переименовывает указанный файл, сразу индексируя его для последующего коммита | ||
| + | $ git mv < | ||
| + | </ | ||
| + | |||
| + | ===== Просмотр истории ===== | ||
| + | |||
| + | <code bash> | ||
| + | # История коммитов для текущей ветки | ||
| + | git log | ||
| + | |||
| + | # История изменений конкретного файла, включая его переименование | ||
| + | git log --follow < | ||
| + | |||
| + | # Показывает разницу между содержанием коммитов двух веток | ||
| + | git diff < | ||
| + | |||
| + | # Выводит информацию и показывает изменения в выбранном коммите | ||
| + | git show < | ||
| + | </ | ||
| + | |||
| + | ===== Фрагменты ===== | ||
| + | |||
| + | <code bash> | ||
| + | # Временно сохраняет все незафиксированные изменения отслеживаемых файлов | ||
| + | git stash | ||
| + | git stash push -m " | ||
| + | |||
| + | # Восстанавливает состояние ранее сохранённых версий файлов | ||
| + | git stash pop | ||
| + | git stash apply stash@{< | ||
| + | |||
| + | # Выводит список всех временных сохранений | ||
| + | git stash list | ||
| + | |||
| + | # Сбрасывает последние временно сохранённыe изменения | ||
| + | git stash drop | ||
| + | </ | ||
| + | |||
| + | ===== Branching ===== | ||
| + | |||
| + | <code bash> | ||
| + | # Список именованных веток коммитов с указанием выбранной ветки | ||
| + | git branch | ||
| + | |||
| + | # Создание ветки | ||
| + | git branch имя_ветки | ||
| + | # удаляет выбранную ветку | ||
| + | git branch -d <имя ветки> | ||
| + | |||
| + | # Переключение активной ветки | ||
| + | git checkout имя_ветки | ||
| + | |||
| + | # Слияние веток | ||
| + | git checkout master # входим в ветку, которую хотим слить | ||
| + | git merge < | ||
| + | </ | ||
| + | |||
| + | ===== Remotes ====== | ||
| + | |||
| + | <code bash> | ||
| + | # Добавляет новый удалённый репозиторий с указанным именем | ||
| + | git remote add < | ||
| + | |||
| + | # Удаляет удалённый репозиторий с указанным именем | ||
| + | git remote remove < | ||
| + | |||
| + | # Переименовывает удалённый репозиторий с указанным старым именем на новое имя | ||
| + | git remote rename < | ||
| + | |||
| + | # Обновляет URL удалённого репозитория | ||
| + | git remote set-url < | ||
| + | |||
| + | # Показывает список всех удалённых репозиториев | ||
| + | git remote -v | ||
| + | |||
| + | # Показывает подробную информацию о конкретном удалённом репозитории | ||
| + | git remote show < | ||
| + | |||
| + | # Скачивает всю историю из удалённого репозитория | ||
| + | git fetch < | ||
| + | |||
| + | # Вносит изменения из ветки удалённого репозитория в текущую ветку локального репозитория | ||
| + | git merge < | ||
| + | |||
| + | # Загружает все изменения локальной ветки в удалённый репозиторий | ||
| + | git push < | ||
| + | |||
| + | # Загружает историю из удалённого репозитория и объединяет её с локальной. pull = fetch + merge | ||
| + | git pull | ||
| + | </ | ||
| + | |||
| + | ===== Merge ===== | ||
| + | |||
| + | {{fixme}} | ||
| + | |||
| + | ===== Tegging ===== | ||
| + | |||
| + | {{fixme}} | ||
| + | |||
| + | ===== Rewrite history ===== | ||
| + | |||
| + | Удаление ошибок и корректировка созданной истории | ||
| + | |||
| + | <code bash> | ||
| + | # Отменяет все коммиты после заданного, | ||
| + | git reset < | ||
| + | |||
| + | # Сбрасывает всю историю вместе с состоянием рабочей директории до указанного коммита. | ||
| + | git reset --hard < | ||
| + | |||
| + | # Отмена последнего коммита | ||
| + | # На самом деле это несовсем отмена коммита, | ||
| + | git revert HEAD | ||
| + | # Отмена конкретного коммита | ||
| + | git revert < | ||
| + | |||
| + | </ | ||