Конспект курса подготовлен для проекта Академия от @ontofractal.
Изучаем Git
О Git
Git – это одна из самых популярных систем контроля версий. Она умеет записывать, хранить и, при необходимости, возвращаться к любым изменениям в проекте. В курсе научат работе с Git и основным его функциям. Git умеет отменять любые изменения в проекте, а также хранить множество разных его версий.
Базовая работ в Git
Чтобы начать работу над проектом в Git мы должны запустить его. Это делает командой
git init
Команда git init используется для того чтобы создать гит-репозиторий для проекта, подключить все инструменты Гита, необходимые для контроля изменений в проекте.
Что такое проект в Git
Любой Git-проект состоит из трех частей
Working Directory - Рабочая директория – здесь ведется вся работа: создание, удаление и редактирование файлов.
Staging Area – Временное хранилище – область временного хранения, где будет записываться список всех изменений рабочей папки.
Repository - Репозиторий – где Git постоянно хранит изменения, как различные версии проекта.
Работа с Git состоит в редактировании файлов в рабочей директории, добавления файлов во временное хранилище и сохранение изменений в репозитории гита. Операция сохранения изменений в репозитории Git называется коммитом (commit).
Список команд Git
git status
Командой Гит статус можно проверить статус текущего проекта.
Если файл помечен красным цветом – значит гит видит его, но еще не начал записывать изменения.
git add
Чтобы Git начал следить за изменениями файла, мы должны добавить его во временное хранилище (Staging Area) это делается командой git add filename - где filename - имя файла, который необходимо добавить в хранилище. А также мы можем добавлять изменения сразу нескольких файлов одним коммитом. Для этого сначала добавляем файлы в хранилище командой git add, но в качестве аргументов передаем названия всех измененных файлов через пробел. git add filename_1 filename_2
git diff
Команда git diff filename служит для проверки различий в файле filename между Репозиторием и временным хранилищем
Изменения в проекте отмечены значком "+" и зеленым цветом.
git commit
Комит – последний шаг работы с гит. Коммит сохраняет изменения из временного хранилища в репозиторий.
У команды git commit есть параметр, небольшое пояснение к коммиту (Пояснение должно состоять не более чем из 50ти символов, находиться в ковычках и быть в настоящем времени). Задается опцией –m.
Например: git commit -m "новая версия конспекта"
git log
Команда для просмотра всех коммитов в хронологическом порядке.
Когда мы работаем над проектом с Git, иногда нам приходится отменять сделанные изменения. Для этого у Git есть несколько способов.
Но сначала давайте разберемся еще с одним понятием SCV Git c HEAD.
HEAD – commit
Так называют текущий коммит в Git. Последняя версия состояния проекта в репозитории. Чтобы увидеть такой коммит нужно ввести команду
git show HEAD
На скриншоте виден вывод этой команды - вывод команды git log для Head-коммита, а также сами изменения в файле.
git checkout
Эта команда используется для восстановления файлов. git checkout HEAD filename – команда восстанавливает файл filename в рабочей директории таким, как он был до последнего коммита.
git reset
Иногда может возникнуть необходимость убрать один из файлов из коммита. Для этого используется функция git reset. Она не отменяет изменения в рабочей директории, просто удаляет их из временного хранилища.
Например: git reset HEAD filename - удалит файл filename из текущего коммита.
Чтобы удалить файл из произвольного коммита используется функция git reset SHA
Эта Команда отменяет изменения до коммита SHA, где SHA – 7 первых символов номера коммита.
Таким образом до изменений HEAD-коммитом считается самый последний коммит. После применения функции git reset - HEAD-коммитом cстановиться тот коммит до которого откатились.
Что для вас было наиболее интересным и впечатляющим в данной неделе курса?
Я работаю программистом много лет, но до сих пор не использовал в работе системы контроля версий. Давно хотел изучить Git, но не было необходимости. С первой же недели лекций я понял что это очень полезный и простой инструмент, именно то что мне было нужно! Гит очень прост в обращении, и не понятно почему я не изучил его раньше. Теперь не терпится поскорее перейти ко второй части и узнать, как же Гит помогает в совместной работе над проектом.
Ваш пост поддержали следующие Инвесторы Сообщества "Добрый кит":
litrbooh, neo, lumia, chika25, cergey-p, karusel1, alisaroma, oksana0407, savelev, dim447, now, smartell, shenanigan, zhenek, alessandarus, nerossoul, byurotegov
Поэтому я тоже проголосовал за него!
Если Вы проголосуете за этот комментарий, то поможете сделать "Доброго Кита" сильнее!