Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Magit представляет собой интерфейс к Git управления версиями системы (Гит Client), реализованного как GNU Emacs пакета [2] [3] , написанной в Elisp . Он доступен через репозиторий пакетов MELPA [4], в котором он является самым загружаемым небиблиотечным пакетом: по состоянию на сентябрь 2020 года его скачали два с половиной миллиона раз [5].

Как и многие графические пользовательские интерфейсы , Magit предоставляет визуальный интерфейс для представления действий по управлению версиями; однако он использует модель, ориентированную на клавиатуру, а также функционирует как текстовый пользовательский интерфейс . [a] Проблема запоминания клавиш смягчается за счет использования всплывающего меню, в котором отображаются действия, доступные пользователю [6], которые служат в качестве мнемонической помощи. [7]

История [ править ]

Magit был создан Мариусом Фоллмером в 2008 году [8], а Йонас Бернулли взял на себя роль сопровождающего в 2013 году. [9] С момента выпуска Magit наблюдал высокую степень участия сообщества , при этом 316 человек [10] внесли свой код в этот проект бесплатного программного обеспечения по состоянию на сентябрь 2020 года.

В 2018 году Magit прошел кампанию по финансированию Kickstarter [11], целью которой было оплатить обслуживающему персоналу год работы. Сбор средств прошел успешно, и в результате проект стал 27-м по величине программным проектом на Kickstarter. [12] Поскольку период финансирования Kickstarter истек, рекомендуется поощрять пожертвования для поддержки разработки авторов посредством прямых платежей, программы спонсорства GitHub и различных других краудфандинговых сервисов. [13]

Функциональность [ править ]

Magit стремится инкапсулировать всю функциональность Git. [1] Таким образом, Magit включает интерфейсы для [14]

  • Клонирование репозитория и получение / извлечение из него
  • Размещение, отключение и отмена изменений в рабочем дереве
  • Создание коммитов и отправка их на удаленный компьютер
  • Создание филиалов и либо объединение или перебазирования на них
    • Magit использует Ediff от Emacs для обеспечения функциональности трехстороннего слияния.
  • Просмотр и разделение истории коммитов пополам
  • Создание и применение патчей
  • Добавление заметок и тегов к коммитам

Кузницы [ править ]

Magit's Forge обеспечивает интеграцию с рядом кузниц , [15] а именно с GitHub и GitLab . [16]

Также указана частичная поддержка: Gitea , Gogs, Bitbucket , Gitweb, Cgit, StGit и Sourcehut.

Кузница в настоящее время допускает [17]

  • Получение тем и уведомлений
  • Список тем, проблем, запросов на вытягивание, уведомлений и репозиториев
  • Создание задач, пул-реквест (PR), PR по проблеме, PR-обзоры и вилки

Прием [ править ]

Был интерес к включению Magit в Emacs, но есть проблемы с получением передачи авторских прав FSF от всех участников проекта. [18]

Magit освещается в ряде сообщений в блогах и учебных пособиях [19] [20], а также в докладе текущего сопровождающего Emacs [21]

Magit по умолчанию включен в конфигурационные фреймворки Emacs Spacemacs [22] и Doom Emacs [23]

По состоянию на сентябрь 2020 года Magit является самым популярным пакетом Emacs на GitHub. [24]

См. Также [ править ]

  • Сравнение графических интерфейсов Git
  • Emacs

Заметки [ править ]

  1. ^ Частично это является следствием того, что он был разработан для GNU Emacs , который сам может работать как TUI .

Ссылки [ править ]

  1. ^ a b Бернулли, Джонас. «Это Магит! Git Porcelain внутри Emacs» . magit.vc . Проверено 16 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  2. Корбет, Джонатан (12 июля 2017 г.). "Emacs и Magit" . LWN.net .
  3. ^ "EmacsWiki: Magit" . Проверено 17 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  4. ^ "magit" . Архив пакетов Emacs Lisp от Milkypostman . Проверено 20 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  5. ^ «Текущий список пакетов» . Архив пакетов Emacs Lisp от Milkypostman . Проверено 20 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  6. ^ «Временные команды» . GitHub . Проверено 17 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  7. ^ Бернулли, Джонас (2017-09-01). «Магит, волшебный интерфейс Git» . EmacsAir .
  8. ^ "magit / magit.el" . GitHub . Проверено 17 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  9. ^ «Примечания к выпуску Magit 1.4.0» . GitHub . 2015-07-01 . Проверено 20 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  10. ^ "GitStats - lib" . magit.vc . Проверено 19 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  11. ^ «Это Магит! Волшебный клиент Git» . Kickstarter .
  12. ^ «Откройте для себя» Технологии / Программное обеспечение »Самый финансируемый - Kickstarter . Проверено 17 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  13. ^ "Пожалуйста, помогите сделать это лучше" .
  14. ^ "Вверх (Руководство пользователя Magit)" . magit.vc .
  15. ^ Heartman, Томас. «Улучшите свой рабочий процесс с Forge» .
  16. ^ "Forge Руководство пользователя и разработчика" . magit.vc .
  17. ^ «Использование (Руководство пользователя и разработчика Forge)» . magit.vc .
  18. Рианна Столмен, Ричард (5 июля 2017 г.). "Re: В поддержку Magit Джонаса Бернулли" . emacs-devel (список рассылки) . Проверено 19 сентября 2020 .
  19. ^ Патил, Сачин. «Как использовать Magit для управления проектами Git» . opensource.com .
  20. ^ Бахманн, Гюнтер. «Magit - текстовый интерфейс git» . itemis .
  21. ^ Вигли, Джон. "Это Магит!" . YouTube .
  22. ^ "Spacemacs - уровень управления версиями" . GitHub . Проверено 19 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  23. ^ "Doom Emacs - файл модулей по умолчанию" . GitHub . Проверено 19 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )
  24. ^ "GitHub Search for" stars:> 1000 ", Emacs lisp, отсортировано по наибольшему количеству звездочек" . GitHub . Проверено 19 сентября 2020 . CS1 maint: обескураженный параметр ( ссылка )

Внешние ссылки [ править ]

  • Официальный веб-сайт