見出し画像

GitHubで成果物を管理する

ドキュメントのバージョン管理をGitHubで

 今回は「ソフト開発失敗本」執筆のフローにおけるGitHubの使い方です。前回Jiraの使い方と合わせてみていただければと思います。

 ではまたまた改めて、全体システムを示します。

 GitHub自体の使い方は省きます。これまた世の中にいっぱい分かりやすい解説が存在していますので、ぜひそちらをご参照ください。

GutHub Flow

Gitを使うにあたってまず運用ルールを決めねばなりません。ご存じの通り、Gitの軍用ルールには3つほど有名なものがあります。

  • Git Flow

  • GitLab Flow

  • GitHub Flow

 それぞれどんなものかは他のサイトを見ていただくとして、今回は最もシンプルなGitHub Flowを採用しました。次のブランチを用いて執筆していきます。

GitHub Flow
  • master: ここからリリースする

  • Episode Branch: 各エピソードを執筆する際にmasterブランチから作る。ブランチ名はJiraの課題IDと、エピソード番号を含むようにする。

 具体的には次のステップで執筆を進めていきます。

  1. masterからブランチを切って、ブランチ上で各エピソードの執筆を行います。適宜commitしながら、書き上げたらPushします。

  2. GitHub上でPull Requestを発行し、レビュアーは自分あてにしておきます。書き上げたエピソードはプリンターで印刷して自分で確認したり、妻に読んでもらったり、アヒル隊長に相談したりします。

  3. 誤字脱字や、文章の変なところを修正したらmasterにマージして、ブランチを削除します。

  4. できたエピソードはBox.netに保存して、O嶋さんにも確認していただきます。O嶋さんからフィードバックがあれば、修正のための「課題」をJiraに追加し、ブランチをmainから切って対応します。

まあ物書きでここまでやらなくてもいいような気もしつつ、masterブランチを健全に保つというのは大事だなあと思います。

フォルダ構成

 リポジトリには最終的に次のフォルダ構成で、成果物などを保管しました。

FTG                   // リポジトリトップ(Failes the Gathring)
│  .gitignore
│  README.md         // プロジェクトの概要
├─.git
├─01_Plan           // 企画提案
├─02_Template       // WORDテンプレートと4コマ漫画のテンプレート
├─03_Work           // 成果物置き場。各章ごとにフォルダ分け
│  │  Index.md      // 目次
│  ├─00_Prologue
│  ├─01_Chapter1
│  ├─02_Chapter2
│  ├─03_Chapter3
│  ├─04_Chapter4
│  ├─05_Chapter5
│  ├─06_Chapter6
│  ├─07_Special
│  ├─08_Epilogue
│  ├─09_References  // 参考文献
│  └─10_Promotion   // SNS宣伝用の4コマ漫画
├─04_Retrospective  // Sprintごとのふりかえり情報
├─05_Release        // 翔泳社さんに提出したもの
├─06_Stock          // アイコンなどエピソードをまたいで使用する絵
├─07_Minutes        // 翔泳社さんとの打ち合わせ記録
├─08_Next           // ネタ置き場
├─09_Tools          // 自作の4コマ漫画のコマ切り抜きツール
└─10_Environment    // 執筆環境資料(このnoteの文章もここ)

 とにかく執筆に関するものはもれなく全部GitHub上に保管するようにはしています。PCが急死してもなんとかなるように。

 常にデスクトップPCとノートPCの両方使って執筆しているのも、ある意味バックアップになっているのだと思います。どっちかが死んでも執筆は止まらないという感じです。(意外にこれも大事!PCは本当に急に死にますからね(;´д`))Gitの分散リポジトリを、ひとりで活用!

次回はふりかえり

 次回はこの仕組みで執筆した結果のふりかえりです。といいつつ、何といっても振り返らないといけないので、次回の投稿にはちょっとお時間を頂いちゃうかもです。どうぞよろしくお願いいたします。


この記事が気に入ったらサポートをしてみませんか?