svn → gitподводные грабли
Naumen PhoneАндрей Хитрин       Константин БеклемишевРазработчик         Руководитель группыahitrin@naumen.ru   kbeklemish...
Что такое Naumen Phone?•   Это 10 лет разработки на C++, Python и    Java•   Гибкая масштабируемая архитектура•   Более 20...
Что такое Naumen Phone?•   Это 10 лет разработки на C++, Python и    Java•   Гибкая масштабируемая архитектура•   Более 20...
Глобальные целиЗахват и полное  доминирование в  регионе APAC!Следствие: Cмещение фокуса с проектной деятельности на релиз...
Наследие: как оно было?Welcome to SVN hell !•   Множество веток•   Они не синхронизируются•   Актуальна только одна•   Нет...
Наследие: как оно было?Партизаны начинают переходить на git и hg
Что мы хотим?          Версии   Удобный Code ReviewСтабилизацию и Тестирование
Почему git?•   скорость работы•   удобное ветвление и слияние•   отдельные ветки для code review•   копирование коммитов• ...
Почему git?•   скорость работы•   удобное ветвление и слияние•   отдельные ветки для code review•   копирование коммитов• ...
Этапы переезда svn → git••   Составление git-workflow (+)•   Самостоятельное изучение githowto (-)•   Тестовый экспорт из ...
Этапы переезда svn → git••   Адаптация систем сборки•   Полный переезд•   Доклад о работе с git (-)•   Мастер-класс по раб...
Что содержит git workflow?•   Правила работы над задачей•   Правила ведения коммитов•   Подготовка к работе•   Основные оп...
git-workflow: схема репозитория master - основная ветка разработки  stable-1.5.0 - стабильная версия
Импортgit-svn + файл авторов
Контроль доступаКак контролировать доступ к репозиторию?
Контроль доступа  Может, gitosis?
Контроль доступаКакие ещё есть решения?• GitoLitehttps://github.com/sitaramc/gitolite• GitLab  HQhttps://github.com/gitlab...
Контроль доступаСтарый добрый ssh+ldap!
Captain Hook
Captain HookПоганится владелец :)
Captain HookЛес может быстро зарасти
Captain HookДобавили сторожевой хук
РезультатыВ гр. разработки NPO переезд удался! :)В гр. разрабоки NP еще многое предстоит  сделать.
Что еще необходимо сделать?•   Покомпонентное дробление git-репозитория NP•   Новая система сборки NP•   Redmine 1.4+ (mul...
Выводы•   надо много обучать•   важно понимать внутреннюю модель•   очень помогает визуализация (gitk)•   учите shell-кома...
DUMP-2012 - Управление разработкой - "Опыт смены системы контроля версий" Константин Беклемишев, Андрей Хитрин (Naumen)
Upcoming SlideShare
Loading in …5
×

DUMP-2012 - Управление разработкой - "Опыт смены системы контроля версий" Константин Беклемишев, Андрей Хитрин (Naumen)

966 views
885 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
966
On SlideShare
0
From Embeds
0
Number of Embeds
380
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

DUMP-2012 - Управление разработкой - "Опыт смены системы контроля версий" Константин Беклемишев, Андрей Хитрин (Naumen)

  1. 1. svn → gitподводные грабли
  2. 2. Naumen PhoneАндрей Хитрин Константин БеклемишевРазработчик Руководитель группыahitrin@naumen.ru kbeklemishev@naumen.ru
  3. 3. Что такое Naumen Phone?• Это 10 лет разработки на C++, Python и Java• Гибкая масштабируемая архитектура• Более 20-и серверных компонент• Три интерфейса пользователя• Две команды разработки
  4. 4. Что такое Naumen Phone?• Это 10 лет разработки на C++, Python и Java• Гибкая масштабируемая архитектура• Более 20-и серверных компонент• Три интерфейса пользователя• Две команды разработки...и мы были счастливы с svn ;)
  5. 5. Глобальные целиЗахват и полное доминирование в регионе APAC!Следствие: Cмещение фокуса с проектной деятельности на релизный цикл
  6. 6. Наследие: как оно было?Welcome to SVN hell !• Множество веток• Они не синхронизируются• Актуальна только одна• Нет единства :(
  7. 7. Наследие: как оно было?Партизаны начинают переходить на git и hg
  8. 8. Что мы хотим? Версии Удобный Code ReviewСтабилизацию и Тестирование
  9. 9. Почему git?• скорость работы• удобное ветвление и слияние• отдельные ветки для code review• копирование коммитов• эффективный поиск• bisect• корректировка истории•• гибкий workflow он популярен!
  10. 10. Почему git?• скорость работы• удобное ветвление и слияние• отдельные ветки для code review• копирование коммитов• эффективный поиск• bisect• корректировка истории•• гибкий workflow Но его надо изучать! он популярен!
  11. 11. Этапы переезда svn → git•• Составление git-workflow (+)• Самостоятельное изучение githowto (-)• Тестовый экспорт из svn в git(разбили на несколько git-репозиториев)
  12. 12. Этапы переезда svn → git•• Адаптация систем сборки• Полный переезд• Доклад о работе с git (-)• Мастер-класс по работе с git (+)• Хуки, подушки и перины
  13. 13. Что содержит git workflow?• Правила работы над задачей• Правила ведения коммитов• Подготовка к работе• Основные операции• Стандартные процедуры работы
  14. 14. git-workflow: схема репозитория master - основная ветка разработки stable-1.5.0 - стабильная версия
  15. 15. Импортgit-svn + файл авторов
  16. 16. Контроль доступаКак контролировать доступ к репозиторию?
  17. 17. Контроль доступа Может, gitosis?
  18. 18. Контроль доступаКакие ещё есть решения?• GitoLitehttps://github.com/sitaramc/gitolite• GitLab HQhttps://github.com/gitlabhq/gitlabhq• GitHub Enterprise (всего $5000 в год!)
  19. 19. Контроль доступаСтарый добрый ssh+ldap!
  20. 20. Captain Hook
  21. 21. Captain HookПоганится владелец :)
  22. 22. Captain HookЛес может быстро зарасти
  23. 23. Captain HookДобавили сторожевой хук
  24. 24. РезультатыВ гр. разработки NPO переезд удался! :)В гр. разрабоки NP еще многое предстоит сделать.
  25. 25. Что еще необходимо сделать?• Покомпонентное дробление git-репозитория NP• Новая система сборки NP• Redmine 1.4+ (multi-repo на каждый проект)
  26. 26. Выводы• надо много обучать• важно понимать внутреннюю модель• очень помогает визуализация (gitk)• учите shell-команды git - в них самое вкусное• используйте хуки• спрашивайте и узнавайте, в чём проблемы

×