• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Mercurial
 

Mercurial

on

  • 1,285 views

 

Statistics

Views

Total Views
1,285
Views on SlideShare
954
Embed Views
331

Actions

Likes
0
Downloads
5
Comments
0

2 Embeds 331

http://getdev.net 321
http://www.getdev.net 10

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Mercurial Mercurial Presentation Transcript

    • Mercurial –распределенная система управления версиями
    • Системы управления версиями (VCS)• Централизованные (CVS, SVN, VSS, TFS, Perforce, Vault, …)• Распределенные (DVCS) (Git, Mercurial, Bazaar, …)
    • Централизованные VCSAnn commit Sources updateBob update Репозиторий Рабочая копия
    • Распределенные VCS Server ? pull commit push update Bob pullAnn commit update commit push update Репозиторий Рабочая копия
    • Достоинства распределенных VCS1. Можно продолжать работать, даже если нет возможности связаться с сервером (работа вне офиса, сервер недоступен…)2. Разделение момента внесения кода в репозиторий и момента получения этого кода остальной командой3. Положительные побочные эффекты: хорошая поддержка работы с ветвями
    • Недостатки распределенных VCS1. Более длительное обучение, смена мышления2. Теперь у вас теперь намного больше способов прострелить себе ногу!!
    • Mercurial• Initial release: апрель 2005• Stable release: 2.0.1, декабрь 2011• Free под лицензией GNU GPL v2• Доступность на *nix, Windows, Mac OS• Доступность на Bitbucket, CodePlex, Google Code, SourceForge, ...• Возможность конвертации репозиториев CVS, Subversion, Perforce, Git, Bazaar…• Интеграция с Visual Studio, NetBeans, Eclipse• GUI: TortoiseHg, MacHg
    • Mercurial в деле• Go programming language• Mozilla• NetBeans• OpenJDK• OpenOffice.org• Python• Symbian Platform• W3C• …
    • Changeset. Набор изменений• Является атомарной единицей истории в репозитории• Фиксируется в репозитории при выполнении commit• При push и pull между репозиториями пересылаются фрагменты истории, т.е. наборы changeset’ов• Содержит: 1. Информацию об изменениях в файлах, но не конечные их версии 2. Имя автора, описание, время фиксации в репозитории 3. Имя ветви разработки
    • История изменений 7: febd28ca9d94 6: 0c9b8a4d0ece 5: a7260c887e12 4: f74700da1dfc3: 8f893b58f2662: e0c28f5e936c 1: 0978b4a57360 0: c4daeac3e815
    • Расположение в файловой системе Sources .hg Репозиторий Core Plugins Рабочая копия HowToBuild.txt
    • Начало работы• Справка: hg help• Создание репозитория: hg init• Статус рабочей копии: hg status• Включить в следующий commit информацию о добавленных и удаленных файлах: hg addremove• Фиксация изменений: hg commit• Получение рабочей копии: hg update• Слияние: hg merge• История изменений: hg log
    • Практика
    • Работа в команде• Клонирование репозитория: hg clone• Получение изменений: hg pull• Список изменений на получение: hg incoming• Отправка изменений: hg push• Список изменений на отправку: hg outgoing
    • Практика
    • Материалы для изученияОфициальный сайт:http://mercurial.selenic.com/“Hg Init: a Mercurial tutorial” by Joel Spolsky:http://hginit.com/“Mercurial: The Definitive Guide” by Bryan OSullivan:http://hgbook.red-bean.com/
    • Спасибо за вниманиеАвтор: Максим ТереховE-mail: terekhovm@gmail.com