Mercurial vs. Git

Git і Меркуріал обидва безкоштовні програмні засоби для GitМеркуріалВбудований веб-сервер Ні Так Гачки до / після події Так Так Кінець рядкових перетворень Так Так Теги Так Так Міжнародна підтримка Часткове Так Перейменування файлів Так (неявно) Так Об’єднати перейменування файлів Так Так Символічні посилання Так Так Відкрите джерело Так Так Підписані зміни Так Так Ідентифікатори редагування SHA-1 хешей Числа, хеши SHA-1 Атомні коміти Так Так Модель історії Знімок Набір змін Розмір сховища O (патч) (велика нотація O) O (патч) (велика нотація O) Модель одночасності Злиття Злиття Операційні системи Unix-подібний, Windows, Mac OS X Unix-подібний, Windows, Mac OS X Область постановки Так Ні Зовнішні відділення Так Ні Вартість Безкоштовно Безкоштовно RCS Ключове слово Так, але не рекомендується за допомогою плагіна Неглибокий замовлення / клонування Так Розширення Bugzilla Відстеження імен файлів / dir Перейменування виявлення Перейменування відстеження Підписка / клонування підкаталогів Ні Ні Модель сховища Поширений Поширений Зберігання дозволів Тільки біт виконання Тільки біт виконання Мережеві протоколи користувацькі, користувацькі для ssh, rsync, HTTP, пакетів електронної пошти HTTP, користувальницька версія ssh, пакетів електронної пошти (зі стандартним плагіном) Розроблено Хуніо Хамано, Лінус Торвальдс Метт Маккалл Підтримується Хуніо Хамано Метт Маккалл Написано в С, Борн Шелл, Перл Пітон і С Відстеження об'єднання Так Так Інтеграція помилок відстеження Ні Trac (через плагін) Ліцензія GPL v2 GPL v2 Веб-сайт git-scm.com www.selenic.com/mercurial ОС POSIX, гірша підтримка Windows Unix-подібний, Windows, Mac OS X Вступ (з Вікіпедії) Git - це безкоштовний розподілений контроль версій або проект управління вихідним кодом програмного забезпечення з акцентом на швидкість. Git спочатку був створений Лінусом Торвальдсом для розробки ядра Linux. Mercurial - це крос-платформний, розподілений інструмент контролю версій для розробників програмного забезпечення. Він реалізується в основному за допомогою мови програмування Python, але включає в себе двійкову різницю, написану на C. Тип Ревізійний контроль Ревізійний контроль

Зміст: Mercurial vs Git

  • 1 Цілі проектування
  • 2 Проекти, що використовують Git vs Проекти з використанням Mercurial
  • 3 Git vs Mercurial Portability
  • 4 Інтерфейс користувача для Git vs Mercurial
  • 5 Суміжні відео
  • 6 Довідники

Дизайнерські цілі

Основні цілі дизайну Mercurial включають високу продуктивність, масштабованість, будучи без сервера, повністю розподіленою спільною розробкою, надійну обробку як простого тексту, так і бінарних файлів, а також розширені можливості розгалуження та об'єднання, залишаючись концептуально простими. Він включає інтегрований веб-інтерфейс.

Однією з ключових цілей дизайну Лінуса Торвальдса для Git була швидкість та ефективність операцій. Інші критерії проектування включали в себе міцні гарантії проти корупції - випадкових чи зловмисних.

Проекти з використанням Git vs Проекти з використанням Mercurial

Зараз кілька програм гучного програмного забезпечення використовують Git для контролю версій, зокрема ядро ​​Linux, Perl, Samba, сервер X.org, Qt (інструментарій), розробка ядра One Laptop per Child (OLPC), веб-рамка Ruby on Rails, VLC , YUI, Merb, Wine, SWI Prolog, GNOME, GStreamer, DragonFly BSD та мобільна платформа Android.

Проекти, що використовують Mercurial, включають Adblock Plus, Aldrin, Audacious, Dovecot IMAP-сервер, GNU Octave, NxOS, Nuxeo, Growl, вікі програмне забезпечення MoinMoin, Mozilla, Mutt (поштовий клієнт), Netbeans (IDE), OpenJDK, Python, SAGE, Sun Microsystem's OpenS та програмне забезпечення для відкриття ресурсу Oracle на зразок Btrfs.

Git vs Mercurial Portability

Спочатку Mercurial був написаний для роботи на Linux. Він був перенесений в Windows, Mac OS X та більшість інших Unix-подібних систем. Mercurial - це насамперед програма командного рядка.

Git розроблений в основному на Linux, але може використовуватися в інших Unix-подібних операційних системах, включаючи BSD і Solaris.

Git також працює на Windows. Є два варіанти:

  • Народний порт Microsoft Windows під назвою msysgit наближається до завершення. Станом на лютий 2009 року є завантажувані програми встановлення, готові до тестування. Деякі команди ще не доступні з графічного інтерфейсу, і їх потрібно викликати з командного рядка.
  • Git також працює над Cygwin (емуляційний шар POSIX), хоча помітно повільніше, особливо для команд, написаних у вигляді скриптів оболонки.

Інтерфейс користувача для Git vs Mercurial

Всі операції Mercurial викликаються як параметри ключових слів до його програми драйвера hg, посилання на хімічний символ елемента ртуті. Інтерфейси GUI для Mercurial включають Hgk (Tcl / Tk). Це реалізовано як розширення Mercurial і є частиною офіційної версії. Цей переглядач відображає спрямований ациклічний графік наборів змін у сховищі Меркурія. Цей переглядач можна викликати за допомогою команди "hg view", якщо розширення включено. hgk спочатку базувався на подібному інструменті для git під назвою gitk. Існує заміна hgk з назвою hgview, яка написана в чистому python і забезпечує інтерфейси gtk і qt.

До супутніх інструментів Mercurial відносяться:

  • Пов'язані інструменти для злиття включають (h) gct (Qt) та Meld.
  • Розширення для конвертування дозволяє імпортувати із сховищ CVS, Darcs, git, Arch GNU, Monotone та Subversion.
  • Netbeans IDE підтримує Mercurial з версії 6.
  • Черепаха Hg забезпечує зручний інтерфейс меню, клацніть правою кнопкою миші Windows.
  • VisualHG - плагін провайдера управління джерелами Mercurial для MS Visual Studio 2008.
  • Mercurial Eclipse - плагін для постачальників Eclipse для Eclipse 3.3 та новіших версій.

Альтернативи для запуску Git за допомогою графічного інтерфейсу включають:

  • git-cvsserver (який емулює CVS-сервер, дозволяючи використовувати клієнтів Windows CVS)
  • Замовник Git, заснований на Eclipse IDE, базується на чистому впровадженні Java у внутрішні програми Git: egit
  • Підтримується підтримка NetBeans IDE для Git.
  • Розширення Windows Explorer (TortoiseCVS / TortoiseSVN-lookalike) було запущено в TortoiseGit та Git Extensions, що є розширенням Explorer, а також окремим графічним інтерфейсом та плагіном Visual Studio 2008

Пов’язані відео

Список літератури

  • Вікіпедія: Git_ (програмне забезпечення)
  • Вікіпедія: Mercurial_ (програмне забезпечення)
  • Розробник Mercurial Мартін Гейслер, порівнюючи функції Git та Mercural поглиблено