Working Copy というアプリを使ってみた。今、この文章はまさにこの Working Copy で書いている。

これは iOS アプリで、GitHub への操作を iPhone で行えるようにするというものだ。

GitHub 公式がリリースしているアプリもあるが、そちらはファイルを編集してコミットしたりプッシュしたりできないので、iPhone でファイル作成・編集作業をするなら、代わりとなるアプリが必要になる。

当初は自分でアプリを作ろうかとも考えていたが、1 から作って使えるようになるまではそれなりに時間がかかりそうなので、このアプリでやりたいことが実現できそうならこのアプリを使ってみようかと思っている。

なぜ iPhone から GitHub の操作をしたいかというと、日記を気軽に更新したいからである。

今現在、日記用の Web サイトを公開しているが、将来的にはこれを GitHub Pages に移行しようと思っている。

その理由は、GitHub をマスターにしたいからだ。日記サービスは自分で 1 から作ったものだけあって思い入れがあるが、なんらかの理由でサーバの運営ができなくなる、あるいはデータが消失してしまった段階で、今までの日記のデータが失われてしまう。

もちろん GitHub なら絶対にデータが消えないというわけではないが、少なくとも自分でサーバを管理している場合はそういった不安がつきまとう。

それに対して GitHub Pages でのホスティング、および日記の文章を GitHub 上に管理しておけば、管理する手間がないので、自分で管理できなくなることによるデータの消失を防ぐことができる。

日記に限らず、ブログやメモなど、すべてのデータを GitHub に集約させたいと思っている。

なぜそこまで GitHub に多大な信頼を置いているかといえば、GitHub は今後 1,000 年間はコードを保管するというプロジェクトを発足している。

コードは人類の財産なので、後世にまでその貴重なリソースを残そうという取り組みだ。

自分の個人的なブログや日記が人類の貴重な財産になるかと問われると困るが、少なくともこの GitHub の取り組みに関していえば、このブログ記事も後世に渡って残り続けるということになる。

今まで自分が書いてきたものが、自分が世から去った後でも残り続けるということに、ある種の本能が働く。せっかく文章やコードを書いても、それが自分が生きている間しか残らないと考えてしまうと、やる気が起こらない奇妙な性格をしているのだ。

この考え方はここ数年のうちにふと湧き起こったものなので、昔はそこまで強く意識していたわけではないが、今となっては、自分が作り出したもの、ひいては自分の言動、生活、人生すべてが、何かしらの形でデータとしてインターネットの海のどこかに残れば良いと思っている。

そんなわけで GitHub にブログや日記のデータも集約したいわけだが、PC でしか更新できないとなると気軽さが失われ、継続するのが難しいと思った。

ブログに関してはそれなりにちゃんと文章を書きたいので PC だけでも良いが、日記は適当でも毎日の記録として残しておきたいので、気軽に更新できるということが重要なのだ。

もちろん今でもスマホから快適に更新できるような日記サービスではないのだが、だからこそ GitHub にデータを移行するのであれば iPhone からでも更新ができる快適さが今度こそ欲しいのだ。

だいぶ話が長くなってしまったが、これが iPhone で GitHub の操作を行いたい理由だ。

自分でアプリを作るとしたら、それこそ日記更新用なので、メモアプリのようなインターフェイスで GitHub にプッシュできるようなアプリを作ろうと考えていた。

でも、今使っているこの Working Copy でも快適に更新できるのあればこれを使うのもありかな。

今のところちょっと気になっているのは、文章を打ってからしばらく経つと勝手にスクロールが発生して一番下にある文 (一番新しい文の部分) が一部隠れてしまうという現象が発生するところだ。これはアップデートで直ってくれればありがたいのだが。

Working Copy の説明というより、なぜ自分が iPhone で GitHub の作業を行いたいかという説明になってしまったが、まあこういう自分の思想を文章として残しておくのも悪くはないだろう。

まだこのアプリを使って 30 分ほどしか経っていないが、ざっと見た感じだと、Git の操作は一通りできるような感じがする。

無論、コードをゴリゴリ書いたりするのはさすがに PC と比べたらやりづらいだろうが、できないことはなさそうだ。でもあくまで Git の操作しかできないから、プログラムを実行して動作確認したりデバッグしたりはできなさそうだな。

と考えるとやはり iPhone でコードを書くのは現実的ではないだろうが、自分のようにただ文章を書いてプッシュするくらいなら十分使えるだろう。プッシュしたら GitHub 側が自動的に GitHub Pages へのホスティングもやってくれるので、iPhone だけで更新作業が完結するのもありがたい。

ただ、YAML ヘッダを自動生成するスクリプトを実行したりはできないから、YAML ヘッダを毎回自分で書くのはちょっと面倒だなとは思う。

まあ日記に関しては更新のしやすさを重視してそこらへんは簡易的なもので OK という運用にしようと思っているので問題なかろう。