Предложить код Новости

Шпаргалка Git

Git — это распределенная система контроля версий, которая широко используется для управления и отслеживания изменений в коде и других проектных файлах. Вот некоторые команды Git, которые могут быть полезны при работе с этой системой контроля версий:

Common / Общие
git init Создание нового репозитория Git
git clone url Клонирование существующего репозитория
git add filename Добавление файлов в индекс
git add . Добавление всех файлов в индекс
git commit -m "commit message" Создание коммита с сообщением
git push Отправка коммитов в удаленный репозиторий
git pull Получение обновлений из удаленного репозитория
git diff filename Просмотр изменений в файле
git status Просмотр списка измененных файлов
git branch branchname Создание новой ветки
git checkout branchname Переключение на другую ветку
git merge branchname Слияние ветки в текущую ветку
git branch -d branchname Удаление ветки
git log Просмотр истории коммитов
git checkout filename Отмена изменений в файле до последнего коммита
Branches / Ветки
git branch Перечислить локальные ветки
List all local branches
git branch -a Перечислить удалённые и локальные ветки
List remote and local branches
git checkout -b branch_name Создать локальную ветку и переключиться на неё
Create a local branch and switch to it
git checkout branch_name Переключиться на существующую ветку
Switch to an existing branch
git push origin branch_name Отправить ветку на удаленный сервер
Push branch to remote
git branch -m new_name Переименовать текущую ветку
Rename current branch
git branch -d branch_name Удалить локальную ветку
Delete a local branch
git push origin :branch_name Удалить удаленную ветку
Delete a remote branch
Git документация: git-branch
Логи / Logs
git log --oneline Показывать историю коммитов отдельными строками
Show commit history in single lines
git log -2 Показать историю коммитов за последние N коммитов
Show commit history for last N commits
git log -p -2 Показать историю коммитов для последних N коммитов с diff
Show commit history for last N commits with diff
git diff Показать все изменения локальных файлов в рабочем дереве
Show all local file changes in the working tree
git diff file_name Показать изменения, внесенные в файл
Show changes made to a file
git blame file_name Показать, кто что и когда изменил в файле
Show who changed what & when in a file
git remote show origin Показать удаленные ветки и их сопоставление с локальными
Show remote branches and their mapping to local
Git документация: git-log
git-diff
git-blame
git-show
Очистка / Cleanup
git clean -f Удалить все неотслеживаемые файлы
Delete all untracked files
git clean -df Удалить все неотслеживаемые файлы и каталоги
Delete all untracked files and directories
git checkout -- . Отменить локальные изменения для всех файлов
Undo local modifications to all files
git reset HEAD file_name Отключить файл
Unstage a file
Git документация: git-clean
git-checkout
git-reset
Тэги / Tags — это ссылки, указывающие на определенные точки в истории Git
git pull --tags Получить удаленные теги
Get remote tags
git checkout tag_name Переключитесь на существующий тег
Switch to an existing tag
git tag Перечислить все теги
List all tags
git tag -a tag_name -m "tag message" Создать новый тег
Create a new tag
git push --tags Отправить все теги в удаленный репозиторий
Push all tags to remote repo
Git документация: git-tag
Тайники / Stashes — позволяет «прятать» изменения в рабочей директории и восстанавливать их при необходимости
git stash save "stash name" && git stash Сохранить изменения в тайнике
Save changes to a stash
git stash list Перечислить все тайники
List all stashes
git stash pop Примените тайник и удалите его из списка тайников
Apply a stash and delete it from stash list
Git документация: git-stash
Вот некоторые основные термины, которые используются в Git, и их определения:
  • Репозиторий (repository) — место, где хранится код и другие файлы проекта.

  • Коммит (commit) — запись изменений в репозитории.

  • Ветка (branch) — параллельная версия репозитория, которая позволяет изменять код и исправлять ошибки без влияния на основной код.

  • Слияние (merge) — процесс объединения изменений из одной ветки с другой веткой.

  • Конфликт слияния (merge conflict) — ситуация, когда две ветки содержат разные версии одного и того же файла, и Git не может автоматически решить, какую версию использовать.

  • Вилка (fork) — копия репозитория, которая создается, когда пользователь хочет внести свои изменения в проект, но не имеет доступа к оригинальному репозиторию.

  • Клонирование (clone) — процесс создания локальной копии удаленного репозитория на компьютере пользователя.

  • Индекс (index) — структура данных, которая хранит информацию о том, какие файлы будут включены в следующий коммит.

  • Откат (revert) — процесс отмены изменений, сделанных в определенном коммите.

  • Возврат (checkout) — процесс переключения между ветками, коммитами или файлами в репозитории.

  • Удаленный репозиторий (remote repository) — репозиторий, который расположен на удаленном сервере и доступен для других пользователей.

  • Pull-запрос (pull request) — запрос на внесение изменений в оригинальный репозиторий, который создается после внесения изменений в вилку.

  • Оригинальный репозиторий (upstream repository) — репозиторий, который был форкнут и используется в качестве основного для внесения изменений.

  • История коммитов (commit history) — список всех коммитов, сделанных в репозитории в хронологическом порядке.

  • Тег (tag) — ссылка на конкретный коммит в репозитории, которая используется для пометки важных версий проекта.

  • Stash — временное хранилище изменений, которые еще не готовы к коммиту.

  • Игнорирование файлов (gitignore) — файл, который указывает Git, какие файлы и папки должны быть проигнорированы при добавлении в репозиторий.

  • Хук (hook) — скрипт, который запускается автоматически в определенных событиях Git, например, перед или после коммита.

  • Submodule — отдельный репозиторий, который используется как подмодуль в основном репозитории.