мета-данные страницы
Это старая версия документа!
гайд по git
Представьте, что вы пишете код и внезапно понимаете, что предыдущая версия работала лучше. Или вы работаете с командой, и нужно объединить изменения нескольких человек. Git решает эти задачи, сохраняя историю всех изменений и позволяя безопасно экспериментировать с кодом.
Git хранит снимки вашего проекта в специальном хранилище, которое называется репозиторием. Каждое сохранение изменений называется коммитом, и вы всегда можете вернуться к любому из них.
Настройка
Внесение изменений
# Перечисляет все новые или изменённые файлы, которые нуждаются в фиксации git status # Показывает различия по внесённым изменениям в ещё не проиндексированных файлах git diff # Индексирует указанный файл для последующего коммита git add <файл> # Показывает различия между проиндексированной и последней зафиксированной версиями файлов git diff --staged # Отменяет индексацию указанного файла, при этом сохраняет его содержимое git reset <файл> # Фиксирует проиндексированные изменения и сохраняет их в историю версий git commit -m "<сообщение с описанием>"
Фрагменты
Сохранение и восстановление незавершённых изменений
# Временно сохраняет все незафиксированные изменения отслеживаемых файлов git stash git stash push -m "имя какое тебе удобно для обозначения твоих изменения" # Восстанавливает состояние ранее сохранённых версий файлов git stash pop git stash apply stash@{<тут номер стэша>} # Выводит список всех временных сохранений git stash list # Сбрасывает последние временно сохранённыe изменения git stash drop
Branching
ветки - это ответвления, в которых можно
# cоздание ветки git branch имя_ветки # переключение активной ветки git checkout имя_ветки # слияние веток git checkout master # входим в ветку, которую хотим слить git merge имя_ветки # сливаем с другой веткой
Remotes
Merge
Colaboration
Tegging
Rewrite history
Удаление ошибок и корректировка созданной истории
# Отменяет все коммиты после заданного, оставляя все изменения в рабочей директории git reset <коммит> # Сбрасывает всю историю вместе с состоянием рабочей директории до указанного коммита. git reset --hard <коммит>