Magit

Magit作者|  Marius Vollmer

|

開発元|  Jonas Bernoulli, Kyle Meyer, Noam Postavsky
最新版|

4.3.2[1] / 2025年4月2日 (20日前)

リポジトリ|  github.com/magit/magit
プログラミング
言語|  Emacs Lisp
種別|

* gitクライアント
* テキストエディタプラグイン

ライセンス|  GPL-3.0-or-later
公式サイト|  magit.vc
テンプレートを表示

MagitはGitバージョン管理システムのインタフェースであり、Emacs Lispで書かれたGNU Emacsパッケージとして利用できる[2][3]。MELPAパッケージリポジトリから入手でき[4]、ライブラリ以外のパッケージの中で最もダウンロード数が多く、2024年9月の時点で430万回以上ダウンロードされている[5]。

多くのグラフィカルユーザインタフェースと同様に、Magitはバージョン管理アクションを表す視覚的なインターフェースを提供するが、キーボード中心のモデルを使用し、テキストユーザインタフェースとしても機能する[注釈 1]。キーバインドを記憶する必要があるという問題は、ユーザーが利用できるアクションを表示するポップアップメニューを使用することで軽減され[6]、これは記憶補助として機能する[7]。

## 歴史

[編集]

Magitは2008年にマリウス・ヴォルマー（Marius Vollmer）によって作成され[8]、2013年にジョナス・ベルヌーイ（Jonas Bernoulli）がメンテナーの役割を引き継いだ[9]。リリース以来、Magitはコミュニティとの距離が近く、2020年9月現在、350人がこの自由ソフトウェアプロジェクトにコードを提供している[10]。

2018年、MagitはKickstarterの資金調達キャンペーンを実施し[11]、メンテナーの1年間の作業資金を調達することを目指した。資金調達は成功し、このプロジェクトはKickstarterで27番目に資金を集めたソフトウェアプロジェクトとなった[12]。Kickstarterの資金調達キャンペーン以降は、直接支払い、GitHubのスポンサーシッププログラム、その他のさまざまなクラウドファンディングサービスを通じて、作者の開発を支援するための寄付が奨励されている[13]。

## 機能

[編集]

レポジトリのログを表示するMagitバッファ

MagitはGitの全機能をカプセル化することを目指しており[14]、次のようなワークフロー用のインターフェースを備えている[15]。

* リポジトリのクローン作成とそこからのフェッチ/プル
* ワークツリー内の変更のステージング、アンステージング、および破棄
* コミットの作成とリモートへのプッシュ
* ブランチの作成とマージまたはリベース（英語版）
* MagitはEmacsのEdiffを使用して3方向マージ機能を提供する
* コミット履歴の参照とバイセクト（英語版）
* パッチの作成と適用
* コミットへのメモとタグの追加

### フォージ

[編集]

MagitのForgeは、GitHubやGitLabなど、多数のフォージ（英語版）との統合を提供する[16][17]。

Gitea、Gogs、Bitbucket、Gitweb、Cgit、StGit、SourceHutは部分的にサポートされている。

Forgeでは現在、以下の操作が可能である[18]。

* トピックと通知の取得
* トピック、issue、プルリクエスト、通知、リポジトリの一覧表示
* issue、プルリクエスト（PR）、issueからのPR、PRレビュー、フォークの作成

## 反応

[編集]

Magitは、多数のブログ記事やチュートリアル、元EmacsのメンテナーJohn Wiegleyによる講演で好意的に取り上げられている[19][20][21]。

Magitは、Emacs設定フレームワークSpacemacsとDoom Emacsにデフォルトで含まれている[22][23]。

MagitをEmacsの組み込み機能パッケージとして含めることに関心が寄せられているが、プロジェクトのすべての貢献者からFSF著作権譲渡の許諾を取得することに問題がある[24]。

2023年2月現在、MagitはGitHubで最もスターが付けられたEmacsパッケージである[25]。

## 関連項目

[編集]

* Emacs
* GNU Emacs

## 脚注

[編集]

### 注釈

[編集]

1. ^ これは、それ自体がテキストユーザインタフェースとして動作できるGNU Emacs用に設計されていることによるところが大きい。

### 出典

[編集]

1. ^ "[NonGNU ELPA Magit version 4.3.2"]; 作品または名前の言語: 英語; 出版日: 2025年4月2日; 閲覧日: 2025年4月7日.
2. ^ Corbet, Jonathan (2017年7月12日). “Emacs and Magit”. LWN.net. 2025年2月20日閲覧。
3. ^ “EmacsWiki: Magit”. 2020年9月17日閲覧。
4. ^ “magit”. Milkypostman's Emacs Lisp Package Archive. 2020年9月20日閲覧。
5. ^ “Current List of Packages”. Milkypostman's Emacs Lisp Package Archive. 2024年9月15日閲覧。
6. ^ “Transient commands”. GitHub. 2020年9月17日閲覧。
7. ^ Bernoulli, Jonas (2017年9月1日). “Magit, the magical Git interface”. EmacsAir. 2025年2月20日閲覧。
8. ^ “magit/magit.el”. GitHub. 2020年9月17日閲覧。
9. ^ “Magit 1.4.0 Release Notes”. GitHub (2015年7月1日). 2020年9月20日閲覧。
10. ^ “GitStats - magit”. magit.vc. 2022年3月8日閲覧。
11. ^ “It's Magit! The magical Git client”. Kickstarter. 2025年2月20日閲覧。
12. ^ “Discover » Technology / Software » Most Funded -- Kickstarter”. 2020年9月17日閲覧。
13. ^ “Please help making it better”. 2025年2月20日閲覧。
14. ^ Bernoulli, Jonas. “It's Magit! A Git Porcelain inside Emacs”. magit.vc. 2022年1月2日閲覧。
15. ^ “Top (Magit User Manual)”. magit.vc. 2025年2月20日閲覧。
16. ^ Heartman, Thomas (2020年3月16日). “Improve your workflow with Forge”. 2025年2月20日閲覧。
17. ^ “Forge User and Developer Manual”. magit.vc. 2025年2月20日閲覧。
18. ^ “Usage (Forge User and Developer Manual)”. magit.vc. 2025年2月20日閲覧。
19. ^ Patil, Sachin. “How to use Magit to manage Git projects”. opensource.com. 2025年2月20日閲覧。
20. ^ Bachmann, Gunther. “Magit – A textual git interface”. itemis. 2025年2月20日閲覧。
21. ^ Wiegley, John. “It's Magit!”. YouTube. 2025年2月20日閲覧。
22. ^ “Spacemacs - source control layer”. GitHub. 2020年9月19日閲覧。
23. ^ “Doom Emacs - default modules file”. GitHub. 2020年9月19日閲覧。
24. ^ Stallman, Richard (5 July 2017). "Re: In support of Jonas Bernoulli's Magit". emacs-devel (Mailing list). 2020年9月19日閲覧。
25. ^ “GitHub Search for "stars:>1000", Emacs lisp, sorted by most stars”. GitHub. 2020年9月19日閲覧。

## 外部リンク

[編集]

* 公式ウェブサイト

* 表
* 話
* 編
* 歴

Emacs

実装|

| GNU と
その派生|

* GNU Emacs
* XEmacs

|

その他|

* Freemacs（英語版）
* EINE（英語版）
* Gosling Emacs
* Mocklisp
* Hemlock
* JOVE（英語版）
* mg（英語版）
* MicroEMACS
* MINCE（英語版）
* Multics Emacs
* Perfect Writer（英語版）
* GNU TeXmacs
* vile
* Zmacs（英語版）
* ZWEI（英語版）

モード|

* AUCTeX
* Dired
* Dunnet
* Emacs Speaks Statistics（英語版）
* Emacspeak（英語版）
* EMMS（英語版）
* ERC
* eww
* Gnus
* Magit
* Org-mode
* Planner（英語版）
* rcirc
* RefTeX（英語版）
* SLIME
* w3m

内部|

* Emacs Lisp
* MULE

コミュニティ|

| 組織|

* ハネウェル
* Perfect Writer（英語版）
* マーク・オブ・ザ・ユニコーン
* マサチューセッツ工科大学
* Numara Software（英語版）

|

人物|

* リチャード・P・ガブリエル（英語版）
* ジェームズ・ゴスリン
* ジム・ホール（英語版）
* ダニエル・マーフィー（英語版）
* ラス・ネルソン（英語版）
* リチャード・ストールマン
* ガイ・スティール・ジュニア
* ダニエル・ウェインレブ（英語版）

その他|

* Conkeror
* 四散新聞
* エディタ戦争
* Spacemacs

* コモンズ
* ウィキクォート