GitHubって聞いたことありますか?ソフトウェア開発をしている方なら常識でしょうが、非エンジニアにとっては全く知らない人が大多数だと思います。
GitHubとは、本来はソフトウェア開発におけるソースコード(=プログラミング言語で書かれたソフトウェアのプログラムファイル)のバージョン管理サービスで、チームで運用するためのいろいろな便利なツールが付属しています。しかし、GitHubが管理してくれるのはソースコードだけではなくすべてのテキストファイルであり、GitHubは本質的にはテキストファイルのバージョン管理サービスです。
プログラミングはエンジニアだけの世界ですが、テキストファイルのバージョン管理となるとほかのすべての分野の人がかかわってきますよね。そうです、GitHubはエンジニアだけのものではなく、すべての人に必要なものなのです!(笑)
[toc]※非エンジニア向けということで、用語の正確性よりも分かりやすさを重視して記事を書いています。
GitHubとは?
GitHubでできること
GitHubでできることはテキストファイルのバージョン管理です。文書(テキストファイル)を更新してGitHubにアップロードすると、すべてその履歴が保存されます。下のキャプチャのように、文書のどこ場所をどのように変更したかもわかりやすく表示することもできますし、何を変更したかコメントを付けることもできます。
ある程度修正して形にしたものをアップロードして、初めてGitHubのバージョン管理システムに登録されるので、Word文書の校閲機能のようにちょっとした修正の試行錯誤の履歴がすべて残ってしまうこともなくていいですよね。
GitHubには最新版の文書だけではなく、過去のすべてのバージョンが登録されているので、過去のその時点の文書に戻ることも簡単にできます。
そして、GitHubの最大の特徴は「ちょっと修正してみたいけど、うまくいくかわからない」というようなときに、「今ある文書はそのままにしておいて、そのコピーに修正を加えていって、うまくできたらその修正箇所を今ある文書に統合する」ということができる点です。特にチームで文書を作成しているときは、各々が好き勝手に文書を保存していったら完全にカオスですよね?それを解決してくれるのがGitHubです。
本来のGitHubはプログラミングのコードファイルのバージョン管理ですが、プログラミングのコードはテキストファイルとして記述していくので、結果的にプログラミング以外のどんなテキストファイルでもGitHubを用いてバージョン管理できるというわけです。
GitHubの基本的な使い方
アカウントの登録
まずは、https://github.com/からGitHubのアカウントを登録しましょう。
新規のリポジトリを作成する
リポジトリが作成しようとしている文書を入れるフォルダのようなものです。右上の+マークからNew repositoryを選択します。
デフォルトで公開設定(Public)になっているので、必要に応じてPrivateに変更して作成してください。
GitHub Desktop のインストール
次にhttps://desktop.github.com/からGitHub Desktopをインストールしましょう。GitHub Desktopはコマンドから操作する場合が多いですが、ここでは非エンジニア向けとしてコマンドではなくてGitHub Desktopを用いてアプリから操作する方法を説明します。
作成したリポジトリをPCと同期する
GitHub DesktopからClone repositoryを選択し、先ほど作成したリポジトリを自分のパソコンに複製します。出てくる一覧から先ほどのレポジトリを選択し、保存場所も指定しましょう。
作成したファイルをアップロードする
これでGitHubの準備完了です。あとは、先ほど指定したフォルダに文書を作成してみましょう。GitHub Desktopを開いてみると、左側に今作成したファイルが表示されているはずです。なお、ここで作成するテキストファイルはエンコードをUTF-8にしないと文字化けして今う可能性がありますのでご注意ください。
「Commit to master」でローカルに登録し、「Publish branch」でGitHubのクラウド上にアップロードします。最後に「Publish branch」までするのを忘れないようにしましょう。
このファイルを更新した場合も、GitHub Desktopに自動的に出てくるので、全く同じプロセスでアップロードします。
更新した文書の変更箇所を確認する
まず、GitHubのWeb上で先ほどのファイルを開いてみます。下のキャプチャの「History」というところから履歴を確認することができます。
このファイルの更新履歴の一覧が出てくるので、確認したい更新履歴のところの右側をクリックします。
これでどこを変更したかを確認することができます。
GitHubの使い方応用編
Markdown記法を用いる
文書を記述するための軽量マークアップ言語のひとつとしてMarkdownというものがあります。Markdownの規則に従った文書の記述の仕方をMarkdown記法と呼び、非常にシンプルかつ直感的なものとなります。Markdown記法で書いたテキストファイルそのものをパーサーを通さずに見ても、「シンプルで読みやすいテキストファイル」となるのが特徴です。
GitHubではMarkdown記法が基本となり、.mdファイルは自動的にそのレイアウトで表示されます。Markdown記法の基本はテキスト形式であり応用範囲が広いので、GitHubではぜひMarkdown記法を活用していきましょう。
もちろん、Markdownエディターを使うことで、Markdown記法で書かれたテキストファイルのレイアウトをPDFに変換したりすることもできます。
参考
チームで文書作成する
GitHubを用いたバージョン管理は個人で使う場合も非常に有効ですが、複数人で文書を作成する場合に真価を発揮します。
GitHubを用いると誰かがある文章の更新を提案して、責任者がそれを承認していくというスタイルで文書の作成をしていくことができます。また、前に述べたように文書のどの場所をどのように更新したのかがすべて残せるので、チーム全体としても文書の作成状況を可視化することができます。
ただし、GitHubの無料プランでは3人までの共同編集しかできず、それ以上の人数で共同編集を行う場合は有料プランを用いる必要があるので注意してください。
ホームページを作成する
GitHubにはGitHub Pagesという静的なWebsiteを簡単に公開するサービスがあります。GitHubアカウントがあれば無料でホームページを作成することができ、サーバーの準備なども必要なく、GitHubの画面上で管理することができます。
ライフサイエンス研究者のGitHub活用例
このようにエンジニアによるプログラミングだけではなく、すべての人にとってGitHubは役に立つツールです。では、特にライフサイエンス分野ではどのような使い方が考えられるでしょうか。
実験プロトコールの管理
ライフサイエンス分野に限りませんが、言うまでもなく実験の結果はどのプロトコールを用いて行った結果なのかが非常に重要です。しかし、実験プロトコールも定期的に更新してブラッシュアップしていくものなので、その実験結果はどのプロトコールを用いて行った結果なのかの管理は意外と難しいものです。そんな時はGitHubを用いて.mdファイルで実験ファイルを作って管理しましょう。
特に、電子ラボノートを使っていれば、電子ラボノートからGitHub上の実験プロトコールの特定のバージョンへリンクを張ることができるので、とてもスマートに管理することができます。
参考
GitHubを用いた論文の執筆
私自身は使ったことがありませんが、GitHubを論文の執筆に活用することもできるようです。
コメント