На этой странице представлена краткая информация по командам популярной системы контроля версий Git. В настоящее время охвачены основные команды, но в дальнейшем список будет расширяться.
Быстрый старт
- Создание репозитория на удалённом хостинге репозиториев.
- Создание репозитория на рабочем компьютере.
- Подключение удалённого репозитория к рабочему компьютеру.
Создание репозитория GIT
Инициализация репозитория в существующей папке
$ git init
Клонирование существующего репозитория
$ git clone <url> <directory>
Запись изменений в репозиторий
Проверка состояния файлов
$ git status
Флаги -s
или --short
– упрощённый вывод информации
Индексация изменённых файлов (добавление содержимого к следующему коммиту).
$ git add <file>
Игнорирование файлов
Для игнорирования файлов (логи, временные и др.) необходимо создать файл .gitignore с примером следующего содержания:
# комментарий - это игнорируется
*.a # пропускать файлы, заканчивающиеся на .a
!lib.a # но отслеживать файлы lib.a, несмотря на пропуск файлов на .a
/TODO # игнорировать только корневой файл TODO, а не файлы вида subdir/TODO
build/ # игнорировать все файлы в папке build/
doc/*.txt # игнорировать doc/notes.txt, но не doc/server/arch.txt
Просмотр индексированных и неиндексированных изменений
$ git diff
Параметры:
--staged
– просмотр что из проиндексированного войдёт в следующий коммит.
--cached
– просмотр проиндексированных изменений.
Фиксация изменений
$ git commit
Параметры:
-v
-a
– автоматическая индексация всех отслеживаемых файлов перед фиксацией.
-amend
– повторное сохранение версии (отмена изменений)
Удаление файлов
$ git rm <file>
Параметры:
-f
– принудительное удаление.
--cached
– игнорировать файл
Переименование файлов
$ git mv [file_from] [file_to]
Просмотр истории версий
$ git log
Параметры:
-p
– показать разницу внесённую каждым коммитом.
-2
– ограничить выводимый результат последними двумя записями.
--stat
– краткая статистика изменений в каждом коммите.
--pretty
– изменение формата вывода информации.
--graph
– показывает ASCII-граф истории ветвлений и слияний.
Отмена индексирования
$ git reset HEAD [имя файла]
Параметр:
--hard
– затронуть все файлы в рабочей папке. Опасно.
Отмена внесённых в файл изменений
$ git checkout -- <file>
Удалённые репозитории
Отображение удалённых репозиториев
$ git remote
Параметры:
-v
– показать URL-адреса
Добавление удалённых репозиториев
$ git remote add [сокращенное имя] [url]
Извлечение данных из удалённых репозиториев
$ git fetch [имя удалённого репозитория]
Если активная ветка следит за удалённой веткой, можно автоматически извлекать информацию из удалённой ветки с помощью команды:
$ git pull
Отправка данных в удалённый репозиторий
$ git push [имя удалённого сервера] [ветка]
Параметры:
--tags
— отправка всех тегов.
Просмотр удалённых репозиториев
$ git remote show [имя удалённого сервера]
Переименование удалённых репозиториев
$ git remote rename [репозиторий] [новое имя]
Удаление удалённого репозитория
$ git remote rm [имя репозитория]
Теги
Вывод списка тегов
$ git tag
Создать легковесный тег
$ git tag [название тега]
Параметры:
-a [название тега]
— создать тег с название
-m '[текст комментария]'
— создать тег с комментарием