SlideShare una empresa de Scribd logo
1 de 10
Mercurial (HG)
igor.khomenko@injoit.com
23 декабря 2011
Игорь Хоменко@fuel_ex
- DVCS vs VCS
- Mercurial vs Git
DVCS – достаточно большой шаг вперед
VCS
DVCS
Как работает Subversion
- Когда вы вносите новый код в репозиторий, его получают все (Отличие №1).
Есть выбор!:
- Вносить глючный код и сводить людей с ума, или...
- Придерживать новый код до тех пор, пока полностью его не
отладите.
... ”Майк однажды так рассердился из-за изменений, которые
поломали билд, что ворвался к практиканту, смахнул все с его стола
и проорал: «Это твой последний день!». Этот день не был
последним, но бедный практикант практически намочил штаны.” –
Joel Spolsky
Как работает Subversion
- В Subversion мыслят ревизиями, а не с изменениями (Отличие №2).
Ревизия - это то, как выглядит вся файловая система в определенный
момент времени.
Если централизованная система контроля версий «думает»: у меня
есть версия 1, после этого будет версия 2, после этого версия 3 и так
далее. В распределенной системе все по другому: сначала не было
ничего, потом добавлены эти изменения, потом добавлены те, и т.д.
Пользователь мыслит в терминах изменений. Если раньше было: «Я
хочу получить версию номер Х», или «Я хочу последнюю версию», то
теперь: «Хочу получить набор изменений Пети».
- Subversion, по сути, система контроля изменений для файлов, а в
Mercurial контроль изменений применяется ко всему каталогу, включая
все подкаталоги (Отличие №3).
- git help checkout | wc –l 390 lines
- (hg help update && hg help branch && hg help revert) | wc –l 118 lines
The Real Difference Between
Mercurial and Git. 1
Git - Swiss Army knife 
Code Hosting
bitbucket.org
The Real Difference Between
Mercurial and Git. 2
Links
QuickBlox
- Hg Init - Учебное пособие по Mercurial от Joel Spolsky (6 частей):
http://habrahabr.ru/blogs/development_tools/108443/
- hg tip - Learn Mercurial one bite-sized tip at a time - http://hgtip.com
- Bitbucket - Unlimited DVCS Code Hosting, Free - https://bitbucket.org
Mercurial vs Git
Mercurial vs Git

Más contenido relacionado

La actualidad más candente

Gitify - швейцарский нож для MODX-воина
Gitify - швейцарский нож для MODX-воинаGitify - швейцарский нож для MODX-воина
Gitify - швейцарский нож для MODX-воинаMODX Беларусь
 
базовые принципы работы с Git
базовые принципы работы с Gitбазовые принципы работы с Git
базовые принципы работы с GitDressTester
 
Ci на базе docker
Ci на базе dockerCi на базе docker
Ci на базе dockerIvan Grishaev
 
Linuxvirt seminar-csc-2015
Linuxvirt seminar-csc-2015Linuxvirt seminar-csc-2015
Linuxvirt seminar-csc-2015OSLL
 
Пространства имен Linux (linux namespaces)
Пространства имен Linux (linux namespaces)Пространства имен Linux (linux namespaces)
Пространства имен Linux (linux namespaces)OSLL
 
Введение в Docker
Введение в Docker Введение в Docker
Введение в Docker Andrey Markelov
 
Кратчайшее введение в docker по-русски
Кратчайшее введение в docker по-русскиКратчайшее введение в docker по-русски
Кратчайшее введение в docker по-русскиOSLL
 
Controlul versiunilor
Controlul versiunilor Controlul versiunilor
Controlul versiunilor Dmitrii Stoian
 
Стажировка 2014, занятие 4. Git, Github и Open source.
Стажировка 2014, занятие 4. Git, Github и Open source.Стажировка 2014, занятие 4. Git, Github и Open source.
Стажировка 2014, занятие 4. Git, Github и Open source.7bits
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентацияPavel Odintsov
 
Docker - быстро, просто, наглядно
Docker - быстро, просто, наглядноDocker - быстро, просто, наглядно
Docker - быстро, просто, наглядноFallenKain
 

La actualidad más candente (15)

Gitify - швейцарский нож для MODX-воина
Gitify - швейцарский нож для MODX-воинаGitify - швейцарский нож для MODX-воина
Gitify - швейцарский нож для MODX-воина
 
базовые принципы работы с Git
базовые принципы работы с Gitбазовые принципы работы с Git
базовые принципы работы с Git
 
Ci на базе docker
Ci на базе dockerCi на базе docker
Ci на базе docker
 
Linuxvirt seminar-csc-2015
Linuxvirt seminar-csc-2015Linuxvirt seminar-csc-2015
Linuxvirt seminar-csc-2015
 
Пространства имен Linux (linux namespaces)
Пространства имен Linux (linux namespaces)Пространства имен Linux (linux namespaces)
Пространства имен Linux (linux namespaces)
 
Введение в Docker
Введение в Docker Введение в Docker
Введение в Docker
 
Кратчайшее введение в docker по-русски
Кратчайшее введение в docker по-русскиКратчайшее введение в docker по-русски
Кратчайшее введение в docker по-русски
 
Docker for JS people
Docker for JS peopleDocker for JS people
Docker for JS people
 
Controlul versiunilor
Controlul versiunilor Controlul versiunilor
Controlul versiunilor
 
Стажировка 2014, занятие 4. Git, Github и Open source.
Стажировка 2014, занятие 4. Git, Github и Open source.Стажировка 2014, занятие 4. Git, Github и Open source.
Стажировка 2014, занятие 4. Git, Github и Open source.
 
Containers in real world презентация
Containers in real world презентацияContainers in real world презентация
Containers in real world презентация
 
Docker - быстро, просто, наглядно
Docker - быстро, просто, наглядноDocker - быстро, просто, наглядно
Docker - быстро, просто, наглядно
 
Docker. Основы
Docker. ОсновыDocker. Основы
Docker. Основы
 
Что такое Docker
Что такое DockerЧто такое Docker
Что такое Docker
 
Mercurial
MercurialMercurial
Mercurial
 

Similar a Mercurial vs Git

Никита Шультайс. "Система управления версиями git"
Никита Шультайс. "Система управления версиями git"Никита Шультайс. "Система управления версиями git"
Никита Шультайс. "Система управления версиями git"Egor Stremousov
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с GitDenis Latushkin
 
системы контроля версий
системы контроля версийсистемы контроля версий
системы контроля версийDressTester
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаПупена Александр
 
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...Tech Talks @NSU
 
Сборка проектов с помощью ENB
Сборка проектов с помощью ENBСборка проектов с помощью ENB
Сборка проектов с помощью ENBAleksandr Boichenko
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним боротьсяВладимир Кожаев
 
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesPositive Hack Days
 
Инструменты командной работы
Инструменты командной работыИнструменты командной работы
Инструменты командной работыSergey Nechaev
 
Git для начинающих
Git для начинающихGit для начинающих
Git для начинающихVadim Drobinin
 
GIT Slides (25.03.2015)
GIT Slides (25.03.2015)GIT Slides (25.03.2015)
GIT Slides (25.03.2015)Ilya V
 
Юлия Писаревская - В поисках эффективности: Slack и BitBucket
Юлия Писаревская - В поисках эффективности: Slack и BitBucketЮлия Писаревская - В поисках эффективности: Slack и BitBucket
Юлия Писаревская - В поисках эффективности: Slack и BitBucketTatyana Bragina
 
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUsDataArt
 

Similar a Mercurial vs Git (20)

Git for you
Git for youGit for you
Git for you
 
Python dependencies
Python dependenciesPython dependencies
Python dependencies
 
Никита Шультайс. "Система управления версиями git"
Никита Шультайс. "Система управления версиями git"Никита Шультайс. "Система управления версиями git"
Никита Шультайс. "Система управления версиями git"
 
Основы работы с Git
Основы работы с GitОсновы работы с Git
Основы работы с Git
 
Git presentation
Git presentationGit presentation
Git presentation
 
системы контроля версий
системы контроля версийсистемы контроля версий
системы контроля версий
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контента
 
iweb01
iweb01iweb01
iweb01
 
Git basis
Git basisGit basis
Git basis
 
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...
Tech Talks @NSU: Методологии разработки ПО. Что на самом деле скрывается за с...
 
DevHub 3 - CVS
DevHub 3 - CVSDevHub 3 - CVS
DevHub 3 - CVS
 
Сборка проектов с помощью ENB
Сборка проектов с помощью ENBСборка проектов с помощью ENB
Сборка проектов с помощью ENB
 
Ivan p
Ivan pIvan p
Ivan p
 
что такое Git и как с ним бороться
что такое Git и как с ним боротьсячто такое Git и как с ним бороться
что такое Git и как с ним бороться
 
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
 
Инструменты командной работы
Инструменты командной работыИнструменты командной работы
Инструменты командной работы
 
Git для начинающих
Git для начинающихGit для начинающих
Git для начинающих
 
GIT Slides (25.03.2015)
GIT Slides (25.03.2015)GIT Slides (25.03.2015)
GIT Slides (25.03.2015)
 
Юлия Писаревская - В поисках эффективности: Slack и BitBucket
Юлия Писаревская - В поисках эффективности: Slack и BitBucketЮлия Писаревская - В поисках эффективности: Slack и BitBucket
Юлия Писаревская - В поисках эффективности: Slack и BitBucket
 
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
"В поисках эффективности: Slack и BitBucket", Юлия Писаревская, GoodSellUs
 

Más de Igor Khomenko

Chat bots are new apps - flashback
Chat bots are new apps - flashbackChat bots are new apps - flashback
Chat bots are new apps - flashbackIgor Khomenko
 
Chat bots are new apps
Chat bots are new appsChat bots are new apps
Chat bots are new appsIgor Khomenko
 
Use Slack in software development processes
Use Slack in software development processesUse Slack in software development processes
Use Slack in software development processesIgor Khomenko
 
Создание QuickBlox из сервисной компании
Создание QuickBlox из сервисной компанииСоздание QuickBlox из сервисной компании
Создание QuickBlox из сервисной компанииIgor Khomenko
 
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и Web
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и WebQmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и Web
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и WebIgor Khomenko
 
Dive into Push Notifications
Dive into Push NotificationsDive into Push Notifications
Dive into Push NotificationsIgor Khomenko
 
Rapid development of backend-based mobile applications
Rapid development of backend-based mobile applicationsRapid development of backend-based mobile applications
Rapid development of backend-based mobile applicationsIgor Khomenko
 
QuickBuilder - how to make your own Android projects builder
QuickBuilder - how to make your own Android projects builderQuickBuilder - how to make your own Android projects builder
QuickBuilder - how to make your own Android projects builderIgor Khomenko
 

Más de Igor Khomenko (8)

Chat bots are new apps - flashback
Chat bots are new apps - flashbackChat bots are new apps - flashback
Chat bots are new apps - flashback
 
Chat bots are new apps
Chat bots are new appsChat bots are new apps
Chat bots are new apps
 
Use Slack in software development processes
Use Slack in software development processesUse Slack in software development processes
Use Slack in software development processes
 
Создание QuickBlox из сервисной компании
Создание QuickBlox из сервисной компанииСоздание QuickBlox из сервисной компании
Создание QuickBlox из сервисной компании
 
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и Web
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и WebQmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и Web
Qmunicate. Как за 2 дня сделать собственный WhatsApp под iOS, Android и Web
 
Dive into Push Notifications
Dive into Push NotificationsDive into Push Notifications
Dive into Push Notifications
 
Rapid development of backend-based mobile applications
Rapid development of backend-based mobile applicationsRapid development of backend-based mobile applications
Rapid development of backend-based mobile applications
 
QuickBuilder - how to make your own Android projects builder
QuickBuilder - how to make your own Android projects builderQuickBuilder - how to make your own Android projects builder
QuickBuilder - how to make your own Android projects builder
 

Mercurial vs Git

  • 1. Mercurial (HG) igor.khomenko@injoit.com 23 декабря 2011 Игорь Хоменко@fuel_ex
  • 2. - DVCS vs VCS - Mercurial vs Git
  • 3. DVCS – достаточно большой шаг вперед VCS DVCS
  • 4. Как работает Subversion - Когда вы вносите новый код в репозиторий, его получают все (Отличие №1). Есть выбор!: - Вносить глючный код и сводить людей с ума, или... - Придерживать новый код до тех пор, пока полностью его не отладите. ... ”Майк однажды так рассердился из-за изменений, которые поломали билд, что ворвался к практиканту, смахнул все с его стола и проорал: «Это твой последний день!». Этот день не был последним, но бедный практикант практически намочил штаны.” – Joel Spolsky
  • 5. Как работает Subversion - В Subversion мыслят ревизиями, а не с изменениями (Отличие №2). Ревизия - это то, как выглядит вся файловая система в определенный момент времени. Если централизованная система контроля версий «думает»: у меня есть версия 1, после этого будет версия 2, после этого версия 3 и так далее. В распределенной системе все по другому: сначала не было ничего, потом добавлены эти изменения, потом добавлены те, и т.д. Пользователь мыслит в терминах изменений. Если раньше было: «Я хочу получить версию номер Х», или «Я хочу последнюю версию», то теперь: «Хочу получить набор изменений Пети». - Subversion, по сути, система контроля изменений для файлов, а в Mercurial контроль изменений применяется ко всему каталогу, включая все подкаталоги (Отличие №3).
  • 6. - git help checkout | wc –l 390 lines - (hg help update && hg help branch && hg help revert) | wc –l 118 lines The Real Difference Between Mercurial and Git. 1 Git - Swiss Army knife 
  • 7. Code Hosting bitbucket.org The Real Difference Between Mercurial and Git. 2
  • 8. Links QuickBlox - Hg Init - Учебное пособие по Mercurial от Joel Spolsky (6 частей): http://habrahabr.ru/blogs/development_tools/108443/ - hg tip - Learn Mercurial one bite-sized tip at a time - http://hgtip.com - Bitbucket - Unlimited DVCS Code Hosting, Free - https://bitbucket.org