とりあえずGitHubを使ってみる。
はじめに
プログラミングがお強い方々が使っているイメージのあるGitHub。
これまでプログラミングを何年かやってきたけれど、GitHubを使ったこともなかったし、そもそもGitHubが何なのかすら知らない。
いい機会なので、プログラミング強者への第一歩として、GitHubの使い方についてチュートリアルを体験してお勉強しました。
GitHub is 何
こちらのなんとも魅力的なタイトルの記事によると、
Git はバージョン管理ツールです、 GitHub は Git のホスティングサービスです。
ということらしい。全然わからないのでとりあえずやってみよう。
御託はいいからやってみる
あれこれ言うよりもチュートリアルを通して、GitHubの雰囲気をつかもう。
まずはGitHub(https://github.com/)のページに行きます。
トップページから英語で心折れそうになります。
適当なUsernameとEmailアドレス、Passwordを設定してSign upします。
有料プランもあるようですが、とりあえずFreeプランで登録します。
ホイホイと進んでいくとチュートリアル(https://guides.github.com/activities/hello-world/)らしきページにたどり着きました。
とりあえずコードなしで使い方を教えてくれるみたいです。
この”Hello World”チュートリアルでは、
が学べるそうです。はー、1つもわからない。
ステップ1 リポジトリ作ろう
リポジトリとは、1つのプロジェクトのフォルダ、ファイル、画像、動画、スプレッドシート、データセットなどなんでも放り込んでおける場所のことのようです。GitHubでは、プロジェクトの説明やインストール方法などを記したファイルを”README.md”という名前で保存してリポジトリ内に配置しておけば勝手に読み込んでくれて表示してくれます。
リポジトリの作り方はこれだけです。
- 画面右上にある”+”をクリックして、「New repository」を選択。
- 「Repository name」に作りたいリポジトリの名前(今回はhello-world)を入力。
- 「Description」の入力欄には任意でリポジトリの簡単な説明を入力します。
- 「Initialize this repository with a README」にチェックして「Create repository」をクリックする
4のチェックがないと、訳わからない設定に飛ぶのでとりあえず初心者が新規に作るときはチェックつけとけばいいっぽいです。
これが1つのプロジェクトの管理画面になるんですね。なるほど、少し見えてきました。
ステップ2 ブランチ作ろう
ブランチは、違うバージョンのリポジトリを一時的に管理する方法とのことです。
GitHubでは、複数の作業者が同じリポジトリを編集することを想定しているので、一貫性を保つための対応がしっかりしています。OSの排他制御やデータベースのトランザクション処理を勉強したことがある方は理解するのが速いかもしれません。
ブランチは少し分かりづらい概念なので、GitHubさんから画像を引用させていただきます。
簡単に言うと、”master”と呼ばれる最強のブランチ、言わば木の幹みたいなのがあって、何かリポジトリに変更があったら枝ができます。いろいろ議論した結果、この変更で問題ないとなったら、”master”を更新しよう。みたいな感じです。みんながみんな”master”を直接更新してたらヤバいよね、って話です。ちなみに、後の手順で出てきますが、作ったブランチを”master”に結合させることをマージと呼ぶそうです。
ブランチの作り方も簡単です。
- 作成した「hello-world」リポジトリに移動
- 「branch:masterer」と書かれているドロップダウンを開く
- 入力窓に作りたいブランチの名前(今回はREADMEファイルの偏光を行うので「readme-edits」)を入力
- 「Create branch:readme-edits」をクリック
ステップ3 コミットしよう
大したことしてないのに「Bravo!」と褒めてくれます。やはりGitHubは神。
さて、僕たちは今「readme-edits」という名前のブランチを作ったので、その中で編集をしてみましょう。変更を保存すること、または変更をリポジトリに登録することをGitHubではコミットと呼ぶそうです。
コミット(このチュートリアルではREADME.mdの編集)の方法については、
- リポジトリ画面で「README.md」ファイルをクリック
- 右上に編集のためのアイコン(えんぴつマーク)があるのでクリック
- 埋め込みエディタが出てくるので、リポジトリの内容だとかインストール方法だとかを好きなように書く
- 最後に、どんな編集を行ったかが分かるようにコミットメッセージを簡単に書く
- 「Commit changes」ボタンをクリック
でコミットできます。
埋め込みエディタにREADMEの内容を書いて
ページ下部にある「Commit changes」ボタンをクリックすると変更が反映されます。
よく見てみると、エディタ内で「#」をつけると題字になっています。
またエディタ内で1回改行をしただけでは、結果には反映されず一行で表示されてしまうみたいです。TeXと同じですね。
README.mdの書き方についても勉強する必要がありそうです。
ステップ4 プルリクエスト作ろう
プルリクエストとは、編集のリクエスト機能のようなものでコードレビューの際などに用いられるそうです。編集する人に対して、レビューする人が「ここちょっと修正してくれない?」みたいな内容を書く場所といった感じです。
このチュートリアルでは全部1人で作業しているので、その効用を体感することは難しいのですが、チームで開発する際にはとても役立つ機能になるかと思いますので、とりあえずそんなのもあるんだと覚えておくといいかもしれないです。
一応、チュートリアルでのプルリクエストの流れはこんな感じ(1人でやっても何しているか分かりづらい気がします)。
- リポジトリ画面から「Pull request」のタブを開いて、緑の「New pull request」ボタンをクリック
- 比較対象となるブランチ(今回は”readme-edits”)を選択
- もとのブランチに追加した部分が緑色、削除した部分が赤色でハイライトされます
- 変更が問題ないようなら緑の「Create pull request」ボタンをクリック
- プルリクエストのタイトルと簡単に説明を入力し、再び緑の「Create pull request」ボタンをクリック
リポジトリ画面から「Pull request」のタブを開いて、緑の「New pull request」ボタンをクリックして
”readme-edits”を選択すると
”master”ブランチと”readme-edit”ブランチで変更した部分などを教えてくれます。
問題なければ「Create pull request」ボタンをクリック。
適当にタイトルとコメントを入力しておいて、再び緑の「Create pull request」ボタンをクリック
あとは”readme-edits”ブランチを"master"ブランチにマージするだけです。
ステップ5 マージしよう
マージは、ブランチのところで説明したように、ブランチ同士を統合させることです。”readme-edits”ブランチを"master"ブランチにマージしてみよう。
「Merge pull request」ボタンをクリック。はい終わり。
チュートリアル終了
確認です。このチュートリアルでは
というGitHubにおける4つの概念を学習しました。GitHubでどのようにしてプロジェクトのバージョン管理が行われているかといった流れは理解できたような気がします。 今は実際にコードを公開したりするのが楽しみです。
最後に
この記事を最後まで読んでくださったあなたも一緒にGitHubを始めてみませんか?
お読みいただき、ありがとうございました。
はてなブログをはじめました。
プログラミング強い系の人になりたくなったので、はてなブログをはじめました。
プログラミングだけじゃなくて、ほかのこともおそらく書くと思います。
最初なので自己紹介しておきます。
さわったことのある言語はだいたいこんな感じです。
ブログを書いてプログラミングを日々の習慣にできればいいな、といったゆるい感じでコツコツと。