非エンジニアのためのGitHubを使ったweb修正の反映リクエスト(プルリク)入門

こんにちは、榊原です。
web業界にいますと、「てにおはを変更するのに、クライアントがexcelで変更リストを作成」「業者がそれをもとに修正」「更にクライアントが変更されているかをexcelをみながら確認」ということを多く聞きます。

まじかっ!と思う一方で、こういう構造を解決すると双方の単純作業に関わるコスト削減につながりますので、今回は「GitHubを使ったweb修正の反映リクエスト(プルリク)」のやり方をご紹介させていただきます。

GitHubは何者で、なぜGitHubか

GitHubという名前は聞いたことあるでしょうか。最近でいうと「神戸市、オープンデータ活用アプリコンテストでGitHubを利用」とかで話題になりましたが、「バージョン管理サービス」です。簡単にいうと、いつ、誰が、どのように変更したかが全て記録されまして、追うことができるようになります。
 
ですので、プログラミングにかぎらず、「GitHubに会社の就業規則を公開した」のように、どのように規則を変更したかを全て公開する企業もでてきていますし、エンジニアがよく使うというだけで、使い方に問題なければ誰でも利用することができます。便利。

実は、これは「Git」という技術が使われてまして、GitHub以外にも、BitbucketやBucklogというような同様のサービスがあるのですが、GitHubが有名でよく使われ、いろいろなオプション機能がついているというだけで、これら他のサービスを使っても同じことができますー。(以下では、GitHub = Gitとして、書き進めます)

エンジニアのGitHubの使い方

多くのエンジニアはプログラミングコードの管理をGithubを使ってしています。
昔は、いきなりプログラムを動かす公開環境(ユーザがアクセスするURL先)にアップロードしたりしていたのですが、「誰が変更したかわからない」「いつ何を変更したかもわからない」「しかも、動かなくなって、動いてた時のプログラミングコードに戻りたくなっても、上書きしちゃってる」という問題ありありの状況でして、よくそれで「作りなおしだー!」と炎上していました。
重要な金額計算していたexcelファイルに間違った値をいれて、しかも上書きしてしまった状態が度々起きたのです。
 
ですので、エンジニアは

  • 1. プログラミングコードの修正をしたら、GitHubに反映する
  • 2. GitHubから、公開環境へ修正を反映する
  • 3. 公開環境が変更される

という順番で、修正の反映を行います。
 
ですので、今回の趣旨は、「1. プログラミングコードの修正をしたら、GitHubに反映する」のところを、エンジニアではない人でもできるようになろう、です。そうしたら、エンジニアがその変更を確認して、公開環境へ修正を反映してくれます。
いちいちExcelで修正リストをつくって、エンジニアがそれを見ながらぷちぷち入力していく必要なくなりますよ!
 

web修正の反映リクエストの具体的なやり方

「1. プログラミングコードの修正をしたら、GitHubに反映する」ですが、GitHubの画面上からすることができます。
まずは、「ちょっとおバカなGitHub「超『超』入門」あたりを参考に、アカウントを作成・メールアドレスの認証をしてから次にお進み下さい。

1. 修正する対象ファイルを見つける

まずは、修正する対象ファイルをGitHubで開く必要があります。一番手っ取り早いのは、エンジニアに「修正するファイルのURLを送ってくれ」とお願いすること。
https://github.com/rdlabo/guide_pullrequest/blob/master/README.mdのようなURLで受け取ることができます。これは、README.mdというファイルのURLです。
アクセスすると、以下のような画面がでてきますので、右のペンのアイコンをクリックして下さい。

スクリーンショット 2016-02-10 11.18.29
そうすると、編集モードになります。ならない場合は、メールアドレス認証が済んでいないと思いますので、済ませて下さい。
 

2. 変えたいように修正し、保存(コミット)する

修正しましたら、その修正内容を下部のフォームに入力してください。修正タイトル(「Update README.md」と書いてあるところ)が必須入力となっていますので、「Aさんの漢字間違いを修正しました」などわかりやすい修正タイトルを入力するとエンジニアに喜ばれます。

スクリーンショット 2016-02-10 11.26.50

で、「Propose file change」をクリックして保存します。この時点では、「修正したコピーを自分のアカウントに保存する」という作業になりますので、まだエンジニアは修正したとも知りませんし、その修正を反映することもできませんので気をつけて下さい。
 

3. エンジニアに反映リクエストを送る(プルリクエスト)

最後に、エンジニアに「修正したから、これを反映してよ!」と、GitHub上で反映リクエストを送ります。口頭とかメールで依頼することはできません。アカウントが別物なので、エンジニアは反映リクエストをもらわないと何もできません。
2.で保存して、移動した先の画面(以下)から、反映リクエストを送ります。
 
スクリーンショット 2016-02-10 11.33.21
 
「base fork : (いろいろ書いてある) …. head fork: (いろいろ書いてある)」とありますが、左に書いてあるのが反映先、右に書いてあるのが反映元です。
で、下に緑とか赤でいろいろ文字が書かれていると思いますが、それが修正内容です。

この内容でよければ、中段にある緑のボタン「Create Pull Request」をクリックしてください。そうすると、「どういうタイトル、内容で反映依頼(プルリクエスト)を送るか」という画面がでてきます。こちら、特に問題がなければ、そのままの内容で右下の「Create Pull Request」をクリックします。
 
スクリーンショット 2016-02-10 11.37.47

そうすると、以下のように「反映依頼(プルリクエスト)が作成されました」という画面に移動して、これで完了です。エンジニアには自動的に「反映依頼(プルリクエスト)がきたので、反映するかしないか、処理してくださいね」というメールが届きます。

スクリーンショット 2016-02-10 11.38.43
 
お疲れ様でした!
 

終わりに

新規案件でGitを使わない業者はちょっと・・・というぐらいメジャーな技術になりましたので、ぜひ案件の時に「こういう修正方法はどうだろうか」と業者に持ちかけていただければと思いますー。最初に覚えることは多少ありますが、修正の度にExcelを作って・・・ということをすることを考えると、かなり双方楽になるかと思います。
双方楽になることですので、わからないことはエンジニアに聞くようにして下さい!
 
それでは、また。

お問い合わせ