GIT - the stupid content tracker
(man git)
Vlad Komodey
Парень, который кое-что вам расскажет
Система контроля версий или CTRL-C/CTRL-V?


Я сделаю свою СКВ!
12 лет назад


Сейчас
~50 0000 коммитов.
1101 контрибьюторов
647 релизов
Версии СКВ

Локальная
Версии СКВ
Централизованная

Версии СКВ
Распределенная

GIT
Плюсы:
- Скорость
- Сложная структура проекта + большая команда. Простое взаимодействие с коллегами
- Простая модульная разработка
- Быстрый переход в нужное состояние приложения
- Ветки
Git workflow
- git init
- git status
- git remote add origin git@github.com:vkomodey/solid-train.git
- touch README.md
- git status
- git add README.md
- git status
- git commit -m “My first commit”
- git status
- git push origin master
Git с ветками(man git branch)
- git status // on master branch
- git branch customer-subscriptions // create customer-subscriptions branch
- git checkout customer-subscriptions // checkout to customer-subscriptions branch
- git status
- git add -A // stage all modified and untracked files
- git status
- git commit -m “customer subscription API” // commit all staged files
- git status
- git push origin customer-subscriptions
Комиты - чаще, публикуй единожды - git best practices
- Делайте комиты как можно раньше
- Не паникуйте(все можно вернуть)
- Не меняйте историю(эффект бабочки)
- Понятные сообщения к комитам
- Поддерживайте актуальное состояние
- Экспериментируйте!
Git commit messages
2 ways
git commit -m “message”
Самый простой способ сделать комит
git commit
Напишите сообщение с помощью вашего редактора. Эта команда поставит выбранный редактор по умолчанию:
git config --global core.editor "vim"
Сообщения к комитам: best practices
- Значащие
- Настоящее время
- Первая буква - заглавная
- Связывайте комит с задачей(например, с номером карточки в trello - `[321] Add terms and condition page`)
- KISS(keep it simple, stupid). Сообщение к комиту должно содержать только главную цель вашей работы
Сообщения к комитам: bad practices
Github

- Хранилище
- Pull requests(merging, reviewing, shows diffs)
- Форк репозитория
- Pull request ревью
- Интеграция с сторонними сервисами
Github workflow
- Форки
- Пулл реквесты
- Пометки(labels) к пулл реквестам
- Мерж веток на уровне web interface
GIT Минусы
- Уязвимости в алгоритме SHA1
- Git в windows
- Восстановление конкретного файла(некоторые СКВ используют файлы как основу для своей работы)
- Большие изменения - больше мегабайт для проекта
- 1(но не 0) комит. Много команд просто не работают с первоначальным(нулевым) комитом
Not the end..
Вопросы?
Влад Комодей.
Full Stack Javascript разработчик
v.komodey@paralect.com

(Пример) GIT - the stupid content tracker(man git)
By Startup Summer
(Пример) GIT - the stupid content tracker(man git)
- 199