GitHubとか

長い前置き

最近Perlによるプログラミングが楽しく、休みの日は釣りかPerlという日々を過ごしています。20年ぐらい前にLinuxを知ってPerlについて初めて勉強している頃の感覚と似ていてます。 その後仕事でPerlを使ったシステム開発も行ってきたのですが、あるプロジェクト開発で大きな不具合が発生しその対応で相当苦労してからは気持ちがPerlから遠ざかっていた気がします。しかし最近では本当に楽しく感じるのです。

その理由を考えてみたのですが、やはり新しい技術がどんどん出てきているという事実に尽きると思います。今も昔も、新しい技術を取り入れながら自分のプログラミング成果をインターネット上で実感できた時に大変満足感が得られます。その繰り返しで楽しいと感じているのだと思います。

新しい技術とは、Perlで言えば、PSGI,Plackや様々なWebフレームワークと言った事が思い浮かびますが、さらに、様々なWebサービスの存在も大変大きいですね。例えばGit+GitHub。これはOSS系ITエンジニアの開発ツールとして今では常識となっているようです。

そしてここからが本題です。PerlでMovableTypeのプラグインを自由に開発するのが面白くて作った「MultiCounterX」をGitHubで公開しましたので、以下は単なるその御連絡と備忘録です。Aboutサイトも作りました。

Gitソフトウェアの導入

GitやGitHubについて解説できる程知識無いし完全初心者なのでほとんど備忘録的です。。

とりあえず大変わかりやすそうなサイト を見つけ、mysysgitとTortoiseGitをインストールしました。 mysysgitのインストール先リンクは別の場所に転送されましたが無事インストール完了。 それからGitHubアカウントを作成して色々テストしてみました。 理解度を増やすために「GitHubの教科書」という書籍を購入しました。これが初心者には大変わかりやすかったです。 この書籍で「SourceTree」というGitコマンドを完全GUIで扱えるソフトウェアを知りこちらに乗り換えました。

githubのアカウント作成後テストしていると、ページの先頭に赤背景で
「Your account has been flagged.」
というメッセージが出ていることに気づきました。調べてみると下記と同じ状況でした。
your account has been flagged.って?どきどきしながらgithub.com/contactに英語でメールしてみた
もちろん私も英語でスタッフにメールを送り解除して貰いました。

github利用手順

まずはプラグインと連携するログのグラフ化プログラム「 LogGraph」を登録しました。 下記は代表的な流れです。
チーム開発の場合はこれにforkやpulreqest、branchやmergeなどを使ってプロジェクトを進めるようです。 とりあえず私にはまだ不要です。

  1. githubサイトでリポジトリ登録
  2. 自PCにclone
  3. cloneしたフォルダにプログラム一式コピー
  4. SourceTree上で全ファイルindex化
  5. commit
  6. push

最初からgitを使ってバージョン管理するなら 3でファイルを始めから作って行く事になります。

次にMultiCounterX を登録したのですが 一番大変だったのがReadmeの英語対応です。
MTプラグインを公開するには英語対応の一環として Readmeの英語対応も大事です。 OSSの世界では英語を避けては通れない訳ですし。
若い頃のTOEIC最高点が440だった拙い英語力は 今も健在で、最も時間がかかりました。ちなみにLogGraphの方はJapanese Onlyです。

commitメッセージ指針としては下記に従いました。
http://qiita.com/itosho/items/9565c6ad2ffc24c09364
qiitaはプログラミング技術の共有を目的としたSNSサイトです。 こういうWEBサービスの存在も「楽しくプログラミングする」ために一役買っているのでしょう。まだ登録したばかりですが、今後利用してみようと思います。