Загрузка страницы

Что такое Git? Зачем он нужен и как использовать? (примеры из практики)

Друзья, в этом видео я расскажу вам о том, что такое Git, зачем он нужен, как его использовать и как с его помощью оптимизировать и упростить работу в команде. Мы поговорим обо всех особенностях использования этого инструмента и я наглядно покажу как с ним работать.

Что такое git?
Git - это система контроля версий, а если сказать простым языком то это программа, инструмент, которая позволяет нам фиксировать наши изменения в коде, а также благодаря этой фиксации позволяет нескольким людям или даже командам вместе слажено и параллельно работать над каким-то программным продуктом.

Представьте что вы пишите программу и у вас есть какая-то функция, которая допустим сохраняет информацию информацию о пользователе в базу данных, и для этого сохранения вам естественно нужна логика которая собственно это сохранение будет делать. Вот вы написали код, все круто все работает. Как сделать своего рода сохранение как в компьютерной игре которое сможет зафиксировать прогресс?

Git - это как раз такая программа, такая система, которая позволяет эти сохранения создавать и потом управлять ими, менять, возвращаться к ним, удалять и переписывать их, такая фиксация в терминах Git-а называется `commit`

Проще всего гит представлять по аналогии либо с компьютерной игрой и ее сохранениями либо с таким роботом-фотографом, который в любой момент который вы ему скажете сделает так сказать фотографию ваших файлов с которыми вы работаете, зафиксирует их состояние на текущий момент, и затем любой момент может вам сказать поменялось ли что-то в этих файлов с момента прошлой "фиксации".

Git собственно так и делает, вы говорите ему команду, он запоминает состояние ваших файлов на текущий момент присваивая ему специальный номер вот это снимка, там называемый `commit hash` .

Commit hash - набор символов которые уникально идентифицируют сохранение состояния файлов в конкретный момент времени;

Что такое ветки в гите и как их использовать?
В git также используется так называемая система веток, представьте себе что ветка, так называемая branch - это маршрут по которому едет поезд, а каждая его остановка, сохранение состояния это коммит. То есть когда мы начинаем разрабатывать какую-то задачу, пишем код нам нужно идти с точки А в точку Б, у нас скажем пустой файл, а потом постепенно наш код начинает эволюционировать и он со временем начинает что-то внятное делать.

Так вот этот процесс разработки можно представить по той же аналогии с поездом, поездвыезжает с точки А и ему нужно доехать до точки Б, и этот маршрут он будет ехать по своему пути (в нашем случае это и будет ветка нашего git), а также по пути ему надо останавливаться чтобы фиксировать свой прогресс по маршруту, это и будут коммиты в нашем случае, то есть мы пишем код в рамках ветки и делаем коммиты, для того чтобы сохранять наш прогресс внутри метки.

Как его используют команды?
Как такой подход позволяет нам распараллелить работу разных людей и команд и сделать их более продуктивными? Все дело в том что когда мы работаем над каким-то проектом и нескольоко людей пишут код они во 1 могут одновременно менять одни и те же файлы.

Так вот фишка гита в том что каждый разработчик может сам себе создать такую ветку, уникальный маршрут поезда на пути которого будут свои уникальные остановки, то есть свои уникальные коммиты этого разработчика, и эта ветка она будет скажем так принадлежать одному человеку и там он будет фиксировать все свои изменения, делать коммиты.

И все сводится к достаточно простой логике, у нас есть какой-то код который нам надо написать, мы сделали новую ветку, по пути того как мы разрабатываем мы в этом ветке делаем коммиты чтобы зафиксировать изменения, как только мы понимаем что у нас все готово, нам нужно объединится с другими разработчиками, скажем так сделать так чтобы наши изменения ехали по общему маршруту, то мы просто сливаем все наши коммиты из нашей ветки в общую. По аналогии с поездами можно представить что у нас есть какая-то главный поездной маршрут в котором есть все наши остановки, коммиты из всех веток. Таким образом все довольно просто, сделали ветку, написали код попутно фиксируя изменения коммитами, после того как закончили, слили все наши изменения в общую ветку чтобы эти коммиты, эти изменения были доступны всем другим разработчикам.

00:00 Начало
1:03 - Git - что это?
2:52 - Что такое Git commit
4:09 - Ветки или «branch» что это такое?
5:27 - Как команды используют Git?
7:49 - Как применять Git в работе. Практика.
7:57 - Новый репозиторий. (Git init)
9:17 - Создание файла и коммита. (Git commit)
11:46 - Сохранение файлов (Git commit -m)
12:46 - Как работают с ветками и какими они бывают.
14:51 - Создание develop ветки, и ветки для работы ( Git checkout -b feature)
17:06 - Как новый файл добавляется в Git
19:39 - Откат к коммиту (Git reset)
20:44 - Слив на одну ветку (Git merge)

Соцсети:
https://www.instagram.com/itwithvitaly/
https://www.facebook.com/itwithvitaly

#примерыИзПрактики #обучениеIT #становимсяПрограммистами

Видео Что такое Git? Зачем он нужен и как использовать? (примеры из практики) канала IT с Виталием Карнаухом
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
20 августа 2020 г. 15:00:42
00:24:12
Другие видео канала
Какие проекты делать начинающему программисту? Как делать? (Пошаговая инструкция)Какие проекты делать начинающему программисту? Как делать? (Пошаговая инструкция)Что такое GIT, GITHUB и BITBUCKET? / Просто и понятноЧто такое GIT, GITHUB и BITBUCKET? / Просто и понятноНужен ли английский программисту? Как быстро выучить английский в IT? (примеры из опыта)Нужен ли английский программисту? Как быстро выучить английский в IT? (примеры из опыта)Топ 7 ошибок на собеседование в it компанию | Как проходить  IT собеседование (советы из опыта)Топ 7 ошибок на собеседование в it компанию | Как проходить IT собеседование (советы из опыта)Git и GitHub Курс Для НовичковGit и GitHub Курс Для НовичковЗадача на Junior Java, Javascript собеседовании на которой многие валятся. Палиндром.Задача на Junior Java, Javascript собеседовании на которой многие валятся. Палиндром.Техника тайм-менеджмента для всех кто обучается в IT. Как привести дела в порядок (реальные примеры)Техника тайм-менеджмента для всех кто обучается в IT. Как привести дела в порядок (реальные примеры)Junior Разработчик подготовка | Что хочет работодатель? | Что надо уметь/знать?Junior Разработчик подготовка | Что хочет работодатель? | Что надо уметь/знать?Git. Большой практический выпускGit. Большой практический выпускПрокрастинация, переутомление, выгорание. Как справиться с собой и получать от работы удовольствие?Прокрастинация, переутомление, выгорание. Как справиться с собой и получать от работы удовольствие?Git branch — работа с веткамиGit branch — работа с веткамиКак работают программисты? Scrum фреймворк (с точки зрения разработчика)Как работают программисты? Scrum фреймворк (с точки зрения разработчика)Английский для собеседования в IT-компанию. Как готовиться и что отвечать?Английский для собеседования в IT-компанию. Как готовиться и что отвечать?Типичные задачи junior разработчика в компании | Как работают джуниоры? (мой опыт)Типичные задачи junior разработчика в компании | Как работают джуниоры? (мой опыт)Что такое Git? ДЛЯ НОВИЧКОВ / Про IT / GeekbrainsЧто такое Git? ДЛЯ НОВИЧКОВ / Про IT / GeekbrainsЧем отличается Linux от WindowsЧем отличается Linux от WindowsGIT. Интерактивный Rebase. Как с ним работать?GIT. Интерактивный Rebase. Как с ним работать?Профессии будущего внутри IT сферы. Как меняются запросы IT рынка? (взгляд изнутри)Профессии будущего внутри IT сферы. Как меняются запросы IT рынка? (взгляд изнутри)Эти ошибки могут стоить вам позиции Junior-а. Ошибки, которых лучше избежать начинающим. (мой опыт)Эти ошибки могут стоить вам позиции Junior-а. Ошибки, которых лучше избежать начинающим. (мой опыт)
Яндекс.Метрика