Использование Git; введение в Tkinter
Разработка:
- Хранение
- Версионирование
- Файлов/объектов
Состояний всего корпуса кода
- История изменений
- Возможно, нелинейная (орграф)
Коротко о VCS/DVCS
VCS:
Цикл работы с VCS
Используется централизованный репозиторий на всех
- Синхронизация
- Редактирование / отладка
- Оформление коммита
- Публикация
Проблема: совместная работа над одним корпусом текстов
- Интерференция изменений
- В частности взаимоблокировка merge/push
- Изменения опубликованных исходников задним числом
DVCS
Цикл работы с DVCS
Используется два репозитория на каждого пользователя — локальный и публичный
- Коммит и push разделены
- Чужой код — только pull
- ⇒ «Общий» репозиторий — pull-аггрегатор
Цикл:
- Синхронизация
- Разработка (в цикле)
- Редактировние / отладка
- Оформление коммита
- Сохранение коммита в локальный репозиторий
- Публикация коммитов в публичный репозиторий
Минимальные правила
- Одно изменение — один коммит
- (по возможности не вносящий регрессий)
- Описательные commit message:
Однострочное описание решённой задачи
Много строчное описание проделанной работы
- Ответственная публикация
- (изменения задним числом можно делать в неопубликованнй истории локального репозитория)
Остальные правила (содержимое commit message, ветки, теги и т. п. — определяются дисциплиной разработки)
Пример:
init/clone (развёртывание)
(«проблема зарождения жизни»: создание репозитория для публикации)
pull (синхронизация)
- Разработка
- Редактирование
add (регистрация изменений)
commit (фиксация изменений)
push (публикация)
Технические подробности:
commit -a
Редактор для commit message commit -m
- …
TkInter
TODO
Д/З
Для получения оценки необходимо создать свой публичный git-репозиторий и зарегистрировать его тут
- Проверить на нём цикл редактирования / коммитов / публикации (
TODO простая задача на tkinter