「わかばちゃんと学ぶGit使い方入門」という書籍を読んでみました。プログラム開発の現場では非常によく使われるツールという認識だったのですが、今まで触れたことがなかったので、さわりだけでもということで読んでみました。
※基本的に自分用の記録です!!
Git概要
バージョン管理システム。特に複数人やチームでの開発時などにおいて、有効に活用できる。この書籍では、「SourceTree」というグラフィカルUIのソフトを使用し、GitHubと連携した作業イメージが学習できた。
ユーザー登録
書籍ではSourceTreeのインストール時に「アタラシアンアカウント」を登録する必要があるように書かれていたが、2023年4月現在では不要でした。
GitHubと連携するため、GitHubアカウントは新規に作成しました。今回の学習で登録したものはGitHubひとつのみ。
GitHubなどのWebサービスは基本的にユーザー登録してからの使用となるため、学習用や開発作業用のメールアドレスを保有していると、個人使用のメールアドレスとの区別がしやすくなると思いました。
用語の理解
実際に作業していくと簡単にイメージできるが、書籍中に出てきた用語をまとめておく。
実際の現場ではこういった用語をベースに運用方法が定められる。
リポジトリ
貯蔵庫のこと。フォルダをイメージした。
コミット
その瞬間のフォルダやファイルの状態を記録すること。
チェックアウト
コミットに移動するときに使用する。
フォークとクローン
他の人が公開しているリポジトリを自分のGitアカウント(Web上)にコピーすることをフォーク。
Web上のリポジトリを自分のパソコンにダウンロードすることをクローンという。
ブランチ
並行世界。同時並列で作業するときに使用する。masterブランチが本流。
マージ
ブランチの変更を取り込むこと。
プッシュとプル
ローカルリポジトリをリモートリポジトリに反映するときはプッシュ。
他の人のコミットをローカルに取り込むことをプル。
プルリクエスト
自分の変更を他の人のリポジトリに取り込んでもらうことをプルリクエスト。
.gitignore
バージョン管理をしなくてもいいファイルのリスト。
リバート
過去のコミットを打ち消すこと。コミット自体の削除ではなく、反対の内容で新規コミットを作成することで、過去の変更を打ち消す。
リベース
枝分かれしたブランチを一直線にすること。履歴を改変するため、若干の危険性が伴う。
スカッシュ
複数コミットを一つのコミットにまとめること。
フェッチ
リモートリポジトリから最新の状態を取得したい時にフェッチを使用する。リモート追跡ブランチとローカルブランチを区別して作業したい時に使用。フェッチ後にマージするとローカルブランチが更新される。
スタッシュ
未コミットのファイルを一時対比すること。
チェリーピック
別ブランチからの特定のコミットのみを取り込みたいときに使用する。
つまづきポイント
GitやSourceTreeの操作や説明において、基本的な部分でつまづくことはなかった。
ただ、1点のみ。「プッシュ」の実習時、SourceTreeからGitHub(Web)へ接続する際、認証がうまくいかなかった。単純なパスワード認証ができず、OAuth認証というものを設定するとうまくいくようになりました。手順は下記の記事を参考にさせていただいた。
GIGAS JAPANsourcetree/githubでの認証エラーの対処方法 | アプリ関連ニュース | ギガスジャパン今回はsourcetree/githubの認証エラーの対処方法をシェアします。 エラー内容 githubのリポジトリと連携したsourcetreeからgithubサーバーへプッシュ/プル/フェッチなどの操作をおこなう際に | ギガスジャパン
まとめ
難解な内容はなく、図などもわかりやすく解説しているので、入門用としては非常によかったのかなと思う。SourceTreeに依存している内容ではあるので、コマンドラインを使用する場合はより詳細な学習が必要にはなってくる。
本書籍は改訂版が出版されており、コマンドラインにも少し対応しているようです。
コメント