MTを使う人の為のGitHubのススメ
はじめに
例えば、MTの機能拡張の為プラグインを探す、あるいはMTのテーマを探していると、GitHubというサイトでそれらが公開されているのを見る機会があるでしょう。
また、逆にプラグインやテーマをこれから作ろうとしている人は、GitHubでの公開、という選択肢が出てくるかと思われます。
今回はこのGitHubの概要、基本的な利用方法、およびMTと関わる上でどう活用するかについて、触り程度ではありますが、以降に紹介します。
※GitHubの詳細については、Web上で他の多くの方が解説されているので、ここでは基本的な部分と、MTと関わる上でどう活用するかについてに焦点を当てます。
GitHubとは
ざっくり言うとプログラムのソースコードをWeb上で管理・公開・参照するサービスです。
運営はGitHub社という海外の会社によって行われています。
有料と無料のプランがあり、大きな違いは、有料版はソースコードを非公開で管理できるところです。
公開したくない作業用のソースなんかは自身のPC上で管理するとして、GitHub上でMTのプラグイン/テーマの公開と更新を行うには、無料プランでも十分でしょう。
Gitとは
GitHubを理解する上で、Gitは理解すべき概念です。
Gitとは、プログラムのソースコードのバージョン管理を行う仕組みの一種です。
ざっくり言うとGitHubは、このGitをWeb上で利用できるようにしたものです。
GitHubに自作のプラグインやテーマをアップロードする
GitHubの公式ツールが便利
ひと昔前は、自身のPCにあるソースをGitHubと同期させる為には、IDEの拡張機能を使ったり、コマンドを一つ一つ打ったりなど、敷居は決して低くありませんでした。
しかし、現在はGitHub からWindows/Macに公式のクライアントツールがリリースされており、より簡単な手続きでGitHubとの連携ができるようになっています。
GitHub for windows
https://windows.github.com/
GitHub for Mac
https://mac.github.com/
使う上での基本的な用語と動作
ここでは、GitHubおよびGitHubのクライアントツールを利用する上での基本的な用語および動作について説明します。
最低限、次を押さえておけば大きく不自由しないかと思います(′ー`)
リポジトリ(Repository)
ある一つのプログラムのソースコードが入っているバケツのようなものだと考えるとよいか、と思います。
他の方のMTのプラグイン/テーマは、通常このリポジトリ単位で公開されています。
またGitHubを使う場合、一つのプログラムについて、自身のPCに1つのリポジトリが、GitHubのサーバー上に1つのリポジトリが、それぞれあり、GitHubのクライアントツールを使って、自身のPC側とGitHub側を同期する、と考えると分かり易いでしょう。
ブランチ(branch)
GitHubを扱う上では、(厳密には違いますが)リポジトリと同義と考えてもよいでしょう。
コミット(Commit)
GitHubのクライアントツールでは、自身のPC上のリポジトリに、ソースコードの更新内容を反映させる事ができます。
反映させることを"コミット"と呼びます。
プッシュ(Push)
コミットしただけでは、GitHub上のリポジトリには、ソースコードの更新は反映されません。
自身のPC側の更新を、GitHub上のリポジトリに反映させる動作を"プッシュ"と呼びます。
プル(Pull)
プッシュとは逆に、GitHub上のリポジトリに反映されている更新内容を、自身のPC側のリポジトリに反映させることを、"プル"と呼びます。
パブリッシュ(Publish)
GitHub独自の概念です。(厳密には異なりますが)pushとほぼ同義です。
他のMTプラグイン/テーマ作者の方のGitHubを見てみる
現在(MTコミュニティ界隈で)有名なMTプラグインの作者の方は、その多くがGitHub上でプラグインを公開されています。
また、GitHubはSNSのような機能があり、ある作者について、他の作者へのフォロー状況を閲覧できるので、そこからまた他の作者が公開されているプラグイン/テーマを探す事が出来ます。
↓↓↓
中には、公にアナウンスされずひっそりと?登録されているプラグイン/テーマがあり、実用面や学習面で意外と有用なものがあったりするので、定期的に見てみるとよいでしょう。
注意点
プラグイン/テーマのライセンス
(大抵はGPL v2やMITと思われますが)GitHubに登録されているプラグイン/テーマは、ライセンスが個別に設定されています。
自身の意図する用途とライセンスに齟齬があって(特に商用利用で)後で混乱する事が無いように、予めライセンスを確認するようにしましょう。
他の方のプラグインをフォークする
GitHubでは"フォーク(fork)"という操作を行う機能があります。
一見、他の方のリポジトリのコピーを自分のリポジトリとして作成する機能のように見えますが、forkする、ということは、fork先のプログラムの開発にフィードバックする、という意味が含まれます。強制ではないと思われますが、留意しておくべきでしょう。
※forkするのでなく、リポジトリをただコピーする、というやり方もありますが、「forkして新しい物を作ったよ」と、オリジナルの作者の方に通知するだけでも、オリジナルに対してプラスになってもマイナスになる事は無いので、forkした方が良いのでは、と個人的には思われます。
参考
Github for Mac – GithubがMac用の”かわいい”専用クライアントをリリース | A-Listers
http://tech.a-listers.jp/2011/06/23/github-for-mac/
GitHub入門 手順編ユーザ作成からリポジトリ作成まで Hideaki Honda
http://www.slideshare.net/hideaki_honda/github-16525093