Бакалавриат
2019/2020
Системы контроля версий
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Лучший по критерию «Новизна полученных знаний»
Статус:
Курс обязательный (Программная инженерия)
Направление:
09.03.04. Программная инженерия
Когда читается:
1-й курс, 4 модуль
Формат изучения:
без онлайн-курса
Преподаватели:
Панкратова Лилия Александровна
Язык:
английский
Кредиты:
3
Контактные часы:
4
Course Syllabus
Abstract
Курс «Управление версиями с Git» предоставляет вам прочную практическую основу для понимания системы управления версиями Git. Git - это программное обеспечение с открытым исходным кодом, изначально созданное Линусом Торвальдсом. Git управляет файлами команд для больших и маленьких проектов. Это позволяет команде постоянно улучшать свой продукт. Он используется большинством крупных технологических компаний и предполагает наличие знаний для многих современных ИТ вакансий. Это основной компонент DevOps, конвейеров непрерывной доставки и облачных вычислений.
Learning Objectives
- Изучить концепцию контроля версий
- Познакомиться с системой контроля версий Git и ее возможностями
- Научиться применять систему контроля версий Git при работе над индивидуальными или командными проектами
Expected Learning Outcomes
- Создавать различные репозитории
- Производить коммиты в репозитории
- Описывать граф коммитов для конкретного проекта
- Формулировать понятия идентификатора, ссылки, ветви, слияния
- Демонстрировать работу по созданию ветвей, простым слияниям
- Формулировать понятия ветвления и слияния
- Формулировать понятие rebase
- Демонстрировать владение командами fetch, pull, push и другими
- Формулировать понятия pull request, feature branch workflows, forking workflows
- Демонстрировать умение командной разработки проекта используя Git workflows
Course Contents
- Создание первого репозиторияЗнакомство с Git. Установка Git, Sourcetree. Создание локального и удаленного репозитория. Первый коммит.
- Ветвления и слияния 1Ключевые понятия Git: ветвление и слияние. Граф коммитов. Идентификаторы, ссылки. Ветвление и слияния.
- Ветвление и слияния 2Ветвления и слияния. Понятие конфликта. Синхронизация с удаленным репозиторием. Команды fetch, pull, push. История коммитов. Понятие rebase.
- Git WorkflowsКомандная разработка с использованием Git. Понятия pull request, feature branch workflows, forking workflows и Gitflow workflows.
Assessment Elements
- Защита командного проекта
- ЭкзаменЭкзамен проводится с использованием асинхронного прокторинга. Экзамен проводится на платформе MS Teams (https://teams.microsoft.com), прокторинг на платформе Экзамус (https://hse.student.examus.net). К экзамену необходимо подключиться за 15 минут. На платформе Экзамус доступно тестирование системы. Компьютер студента должен удовлетворять следующим требованиям: https://elearning.hse.ru/data/2020/05/07/1544135594/Технические%20требования%20к%20ПК%20студента.pdf) Для участия в экзамене студент обязан: заранее зайти на платформу прокторинга, провести тест системы, включить камеру и микрофон, подтвердить личность. Во время экзамена студентам запрещено: общаться (в социальных сетях, с людьми в комнате), списывать. Кратковременным нарушением связи во время экзамена считается прерывание связи до 10 минут. Долговременным нарушением связи во время экзамена считается прерывание связи 10 минут и более. При долговременном нарушении связи студент не может продолжить участие в экзамене. Процедура пересдачи аналогична процедуре сдачи.
Bibliography
Recommended Core Bibliography
- Somasundaram, R., & Ebooks Corporation. (2013). Git : Version Control for Everyone: the Non-coder’s Guide for Everyday Version Control for Increased Efficiency and Productivity: Beginner’s Guide. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=533211
Recommended Additional Bibliography
- Dooley, J. (2017). Software Development, Design and Coding : With Patterns, Debugging, Unit Testing, and Refactoring (Vol. Second edition). [Berkeley, Californial?]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1641452
- Schmidt, R. (2013). Software Engineering : Architecture-driven Software Development. Waltham, MA: Morgan Kaufmann. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=515418