Git является одним из важнейших инструментов используемых в разработке ПО в наши дни. Владение им является одним из ключевых навыков каждого IT специалиста.
В статье представлен полный набор теории, инструментов, практических заданий, шпаргалок + Roadmap освоения Git для тестировщика*.
*Roadmap подходит для каждого, кто хочет изучить GIT 😉
Термины
Git — распределённая система управления версиями. [1]
Система управления версиями (Version Control System, VCS) — программное обеспечение для облегчения работы с изменяющейся информацией. [2]
GitHub — крупнейший веб-сервис для хостинга IT-проектов (включая git-репозитории) и их совместной разработки. [3]
Плюсы Git
Git является бесплатным и открытым (open source) программным обеспечением.
Его самыми сильными сторонами являются [4]:
- простота в изучении и использовании
- скорость работы
- кроссплатформенность
- гибкость
- любой размер проекта
Правильное использование Git в процессе разработки ПО:
- увеличивает скорость разработки
- повышает удобство создания и поддержки ПО
- уменьшает количество ошибок
- уменьшает время тестирования
Кроме этого Git дает возможность:
- одновременной работы десятков и сотен разработчиков над одним проектом
- проводить эффективные code-review
- управлять всеми изменениями кода
- управлять версиями проекта
- реализовать CI / CD (без Git этих практик не существовало бы)
- …
Минусы Git
Из личного опыта, за 7 лет ежедневной работы с десятком репозиториев минусы так и не нашлись.
Roadmap по обретению навыка работы с Git для тестировщика
- Level Zero
- Выучи определения Git [1] и VCS [2]
- Level Junior
- Скачай Git с официального сайта
- Разберись с основами Git
- Пройди все практические занятия
- Level Advanced
- Скачай любой UI клиент (рекомендую начать с Source Tree)
- Скачай книгу Pro Git Book
- Прочитай главы 1-5, делая все практические задания
- Научись работать с GitHub
- Level Hero
Теория
Основы Git
Продвинутый уровень
- Pro Git book — на русском| українською | in English
UI клиенты
Практика
GitHub
Shit happens
Теория в Телеграм
Специально для подписчиков нашего Телеграм канала мы создали публикацию со всей полезной информацией связанной с Git, который будет обновляться вместе с этим постом.
Источники
- https://ru.wikipedia.org/wiki/Git
- https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F%D0%BC%D0%B8
- https://ru.wikipedia.org/wiki/GitHub
- https://git-scm.com/
FAQ
Что такое GIT?
Git — распределённая система управления версиями. [1]
Что такое Система управления версиями (VCS, version control system)?
Система управления версиями (Version Control System, VCS) — программное обеспечение для облегчения работы с изменяющейся информацией. [2]
Что такое GitHub?
GitHub — крупнейший веб-сервис для хостинга IT-проектов (включая git-репозитории) и их совместной разработки. [3]
Чем Git отличается от GitHub?
Git — это программа, которая используется для управления версиями файлов.
GitHub — это веб-сайт для хранения git-репозиториев. Альтернативы: GitLab, Bitbucket, SourceForge.