Skip to content

n1ktrnv/0_git_basics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Работа с удаленными репозиториями и GitHub

Цель работы

Освоить основные навыки работы с облачными и распределенными системами контроля версий, получить навыки работы с инструментальными средствами, обеспечивающими командную работу над разработкой ПО.

Задания для выполнения

  1. Зарегистрироваться на сайте github.com
  2. Установить на компьютере программу Git
  3. Форкнуть данный репозиторий в свой аккаунт
  4. Склонировать созданный удаленный репозиторий в директорию ~/git/test

screenshot

  1. На локальной машине пишем скрипт ~/git/test/backup.sh, с произвольным содержанием

screenshot

  1. Фиксируем скрипт в репозитории (делаем коммит)

screenshot

  1. Обновляем удаленный репозиторий репозиторий (делаем пуш)

screenshot

  1. Через текстовый редактор добавить любую новую строку с комментарием

screenshot

  1. Сделать коммит

screenshot

  1. Вности синтаксическую ошибку в скрипт

screenshot

  1. Сделать коммит ошибочного скрипта

screenshot

  1. Откатываем до последней рабочей версии

screenshot

screenshot

  1. Просмотреть историю коммитов

screenshot

  1. Добавить несколько коммитов произвольного содержимого

screenshot

screenshot

  1. Создать пулл реквест в данный репозиторий

Контрольные вопросы

  1. Зачем нужен облачный хостинг репозиториев?

Облачный хостинг репозиториев нужен для того, чтобы несколько человек могли удобно работать в общем репозитории.

  1. Какими основными функциями обладает сайт github.com?

Помимо основоного функционала git, сайт github.com позволяет делать форки (копирование чужодого репозитория к себе), пулл реквесты (запрос на внесение измененеий в чужой репозиторий из своей модифицированныной копии), при нахождении багов можно открыть тему с проблемой (issues), разграничить права досутпа и многое другое.

  1. Как организовать командную работу над открытым проектом?

В ветке main должена быть только рабочая версия проекта. Разработка должна вестись в нескольких ветках. Когда работа в какой-либо ветке заканчивается, тот, кто работал над ней, делает пулл реквест в ветку main. Далее происходит код ревью: назначется ревьюеер, который проверяет корретность кода, выявляет все ошибки. Когда все выявленные проблемы решены, код попадает в ветку main. Также в командной разработке обычно пользуются вопросами о проблеме (issues). Если в проекте есть проблема, открывается вопрос. На него ставят метки категорий (к какой части проекта относится вопрос). Далее вопрос рассматривается, и в случае выявления проблемы, она исправляется.

Дополнительные задания

  1. Дополнительно оценивается, если студент продемонстрирует работу с ветками в процессе написания более-сложного программного проекта (не менее трех файлов, двух веток, десяти коммитов, как минимум одно объединение).

screenshot screenshot screenshot screenshot screenshot screenshot screenshot

  1. Дополнительно оценивается демонстрация командной работы. Для этого нужно склонировать репозиторий другому члену команды и коммитить от своего имени. При отправке истории на удаленный сервер (push) на сайте будет отображаться общая история. При скачивании истории с сервера (pull) общая история будет отображаться на локальном компьютере.

screenshot

  1. Настройте работу с git вашей интегрированной среды разработки по выбору. Для работы с python рекомендуется использовать PyCharm. Выполните задания лабораторной работы в IDE используя встроенные средства работы с системами контроля версий.

screenshot screenshot screenshot screenshot screenshot screenshot screenshot screenshot

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 92.9%
  • Shell 7.1%