📖

GitHub入門

2023/02/05に公開

今回はGitHubの使い方を包括的に紹介していきます。

あまり、類似した記事はなかったので、GitHubの使い方をよく理解してないという方には参考になるはずです。

プルリクエスト

まず、プルリクエストについて解説していきます。

プルリクエストとは、自分の変更したコードをマージしてもらうように依頼する機能のことです。

この機能があるおかげで、誰かが変更したコードをマージする前にレビューを挟むことができます。

そして、レビューをした方がコードの質の向上、バグの軽減に大きく貢献します。

では早速PRの手順を解説していきます。

PRの作成

まず、以下のコマンドでローカルブランチをpushします。

git push origin HEAD

こうすることで、GitHubからそのブランチに対して操作することができるようになります。

なので、pushしたブランチを選択してPRを作成できるようになります。

次にタイトルと説明を追記して、PRを作成します。

今回は手を抜きましたが、仕事上はなるべく具体的なタイトル、詳細な説明を書くようにしましょう。

また、チームで働いてる場合はレビュワーを設定して、レビューを依頼しましょう。

PRのレビュー

次にレビューの方法を解説していきます。

ちなみに、以下のコマンドで他人のリモートブランチにチェックアウトすることができます。

# リモートブランチのfetch
git fetch origin <ブランチ名>
# リモートブランチの確認
git branch -r
# リモートブランチへのcheckout
git checkout <ブランチ名>

レビューを依頼された側は、このようにコードに対してレビューすることができます。

Add single commentを押すと、コメントを書くたびにメール通知が飛んでしまうので、start reviewをすると良いでしょう。

そして、レビューし終わった際は、コメントと共に承認などをすることができます。

start reviewを選択していた際は、この時に通知がいきます。

ざっくりの説明は次の通りです。

種類 説明
Comment 一般的なコメント、承認も非承認もしない
Approve 承認
Request changes 修正依頼

基本的に、approveがないとmergeできないように設定しているチームが多いかと思います。

また、CommentとRequest changesの使い分けが曖昧なので、どちらかしか使ってないというチームも多いかと思います。

そして、レビューを受けた側は該当箇所を修正して、コメントに返信しましょう。

マージ

Approveされた場合は、次にマージすることができます。

マージの種類は次の3つがあります。

・普通にmerge commitを作るマージ
・squad and mergeでコミットを一つにまとめてマージ
・rebase and mergeでrebaseによるマージ

ここはチームによってどれにするか決められていると思うので、それに従いましょう。

また、マージしたブランチは削除しておくようにしましょう。

Issue

次に、issueという機能について解説していきます。

こちらは課題管理機能となります。

タスクが完了した際は、issueをcloseして終了を表すことができます。

また、PRに参照としてissueのリンクを貼ることもできます。

さらに、labelをつけて課題を分類することや、milestoneを使って期限を設定することもできます。

Projects

Projectsタブでカンバンボードなどを追加することができます。

また、先ほどのissueと組み合わせることも可能です。

このように、GitHubだけでタスク管理を完結させることができます。

そのため、GitHubだけでタスク管理をしているというチームも多いでしょう。

Wiki

次に、wikiについて解説していきます。

こちらはその名の通り、wikiを作ることができる機能です。

例えば、yargsというnpmパッケージのリポジトリは次のようになっています。

このように、マークダウン形式で、wikiを書くことができます。

insights

insightsタブでは、その名の通り様々な統計情報を見ることができます。

例えば、マージされたプルリクエストやマージ待ちプルリクエスト、イシューの数なども確認できます。

また、曜日ごとのコミット数なども見れるので、振り返るの際にも役立つでしょう。

まとめ

今回はGitHubの使い方などに解説してきました。

GitHubを良く分かってなかったという方は、ぜひ参考にしてください。

宣伝

0からエンジニアになるためのノウハウをブログで発信しています。
https://hinoshin-blog.com/

また、YouTubeでの動画解説も始めました。
YouTubeのvideoIDが不正ですhttps://www.youtube.com/channel/UCqaBUPxazAcXaGSNbky1y4g

インスタの発信も細々とやっています。
https://www.instagram.com/hinoshin_enginner/

興味がある方は、ぜひリンクをクリックして確認してみてください!

Discussion