はじめに
エンジニアになるべく、GitやGitHubは使えないとまずいと聞いていたので、体系的な知識を入れるために書籍で勉強しようと考えました
Gitを勉強するなら動画がいいとあるYoutuberが言っていましたが、私の場合は本のような全体概要をつかみやすい教材のほうがあっているなと思いました。これは人それぞれだと思います。
この本を読み終わるのに4日くらいかかりました。もともと本を読むのは得意ではないので早い方はもっと早いと思います。
1章 Gitの基本をまなぼう
- Gitはなぜつかう
- なぜバージョン管理をする必要があるのか
- GitとGitHubの違いは
- ローカルレポジトリとリモートレポジトリの仕組み
正直ローカルレポジトリとリモートレポジトリの仕組みはめちゃわかりやすくて、これのおかげでこの後読み進めるときに混乱しませんでした
3章 ファイルをバージョン管理してみよう
- ローカルレポジトリで使用するコード一覧
- ローカルレポジトリの仕組みとコードがどう関係しているかの図
- コードの実践
こちらの書籍は図がとてもわかりやすいのでコードがローカルレポジトリのどの部分で動いているかがわかります
コードの実践はinit
,add
,commit
,rm
,checkout
,reset
,status
,diff
,log
をやりました。
4章 GitHubのレポジトリをパソコンに取得する
- GitHubの公開鍵の作成とリンク
- レポジトリのフォークとクローン
ここではじめてGitHubができてました。GitHubを触るための準備という感じでした
5章 ブランチを使ってファイルを更新しよう
- ブランチとは
- ブランチの作成と切り替え
- プルリクエストの作成(レビュアーのつけ方とかものってます)、コメント、承認等
- マージの方法(マージコミット、スカッシュ、リベース)
マージの方法についてはイメージがわかなかったり、どう違ってどのようなメリデメがあるかを調べていたらだいぶ時間がかかってしまいました
わたしのことを応援してくれている現役エンジニアにマージについて聞いたところ、現場はマージコミットやスカッシュが多いとのこと。リベースはマージでは使用しないがコミットを並び替えるのに使用するらしいです。
ちなみに本書でリベースをつかってコミットの並び替えの方法については触れられていませんでした
また、GitHubフローの概念をサラッと説明していましたが、Gitフローの説明やGitHubフローの踏み込んだ説明はありませんでした。
入門書なので踏みこみすぎた説明はないので、初学者の私にとってはとてもわかりやすいと感じました
6章 複数ブランチを使ってファイルを更新する
- ここからはこの章まで学んできた内容を実践する章になっている
- コマンドのショートカットもこの章から出てくる
- ブランチの同時作業の際は、ほかのブランチでマージが行われたら自分のローカルレポジトリにmasterブランチをpullで読み込んでマージする必要がある
ここから実践的でした。コードだけでなく写真や図がとても多いので詰まることなく読み進めることができました
7章 コンフリクトに対応しよう
- コンフリクトを理解するためにわざとコンフリクトを発生させる
- コンフリクトはほかのブランチで編集したと自分が作業しているブランチの編集部分が重複した際にどちらを選択するか、Gitが教えてくれる
- コンフリクトが起きても、修正をしてpullすればそこまで怖いことではない
まずコンフリクトが起きたら、相談するのがよさそうですね。
ここで予期しないデータを上書きしてしまったらまずいと思うので。
8章 GitHubをさらに使いこなそう
- GitHubにはたくさんのオープンソースがある
- 具体的にどのように活用していくかの説明はなかった
まとめ
Git,GitHub入門書にこまったらまよわずおすすめの1冊です
しかし現場レベルまで理解できたかというとまだまだなので、もう1~2冊Git関連の書籍を読みたいと思います。