Distributed Version
      Control Systems

  Fix that bug NOW!    Сидоров Игорь,
Сделайте это вчера!    ООО «СофТраст»
      © your boss     www.iteamlead.net
Обзор
• Что такое DVCS
• Преимущества
• Ветвление/Слияние
• Недостатки
• Hg vs. Git
                      SVN – это не то, что вам нужно
DVCS за 5 минут
 Центральный репозиторий
DVCS за 5 минут
 Гибкий рабочий процесс
DVCS за 5 минут
   Развертывание


             pro
   dev
              d
DVCS за 5 минут
   Иерархия доверия
Работаем offline
У каждого своя полная
        копия
Это быстро!
Ветвление
                                  release



   “trunk”

bugfix branch

feature branch



                  feature X   bugfix feature X
Слияние в SVN
             Merge before commit
            remote   local

                             update

                             run tests; no errors

                             write code

 error in                    run tests; no errors
commit?
                                                        error in
                             update + solve conflicts
                                                        merge?

                             run tests; errors



      No commit to revert to!
Слияние в DVCS
            Commit before merge
            remote   local

                             update

                             run tests; no errors

                             write code
                                                           Revert to
 error in                    run tests; no errors
commit?                                                 working commit
                             make local commit           and try again
                                                           error in
                             update + solve conflicts      merge?

                             run tests; errors
Недостатки
• Потеря простоты модели
• Более, чем один путь сделать одно и
  тоже
• Нельзя взять часть репозитория
• Надо читать доки :)
Mercurial vs. Git



 Who the FUCK cares?
  Use what YOU like
Спасибо!
Вопросы?

            Сидоров Игорь,
            ООО «СофТраст»
           www.iteamlead.net

Distributed Version Control Systems

  • 1.
    Distributed Version Control Systems Fix that bug NOW! Сидоров Игорь, Сделайте это вчера! ООО «СофТраст» © your boss www.iteamlead.net
  • 2.
    Обзор • Что такоеDVCS • Преимущества • Ветвление/Слияние • Недостатки • Hg vs. Git SVN – это не то, что вам нужно
  • 3.
    DVCS за 5минут Центральный репозиторий
  • 4.
    DVCS за 5минут Гибкий рабочий процесс
  • 5.
    DVCS за 5минут Развертывание pro dev d
  • 6.
    DVCS за 5минут Иерархия доверия
  • 7.
  • 8.
    У каждого свояполная копия
  • 9.
  • 10.
    Ветвление release “trunk” bugfix branch feature branch feature X bugfix feature X
  • 11.
    Слияние в SVN Merge before commit remote local update run tests; no errors write code error in run tests; no errors commit? error in update + solve conflicts merge? run tests; errors No commit to revert to!
  • 12.
    Слияние в DVCS Commit before merge remote local update run tests; no errors write code Revert to error in run tests; no errors commit? working commit make local commit and try again error in update + solve conflicts merge? run tests; errors
  • 13.
    Недостатки • Потеря простотымодели • Более, чем один путь сделать одно и тоже • Нельзя взять часть репозитория • Надо читать доки :)
  • 14.
    Mercurial vs. Git Who the FUCK cares? Use what YOU like
  • 15.
    Спасибо! Вопросы? Сидоров Игорь, ООО «СофТраст» www.iteamlead.net