Gitはバージョン管理システムの一つです。本連載では、株式会社MIXIで行っているGit研修の内容をもとに、3回にわたりGitについて解説します。 第3回となる本記事は、Gitについてより理解を深めるために、Gitの内部構造について解説します。
対象読者
- Gitをより深く理解したい方
- Gitの自作に興味がある方
Gitの内部構造を学ぶ意義
Gitの使い方を知っている人でも、それぞれのサブコマンドが実際どういった挙動をしているか、ましてや内部構造がどうなっているかを学んだことがある人は少ないかもしれません。というのも、Gitが内部を知らなくとも十分使える優秀なツールになっているからだと思います。
しかし、Gitの内部実装を知ることで、コマンドの挙動を正確に理解できるだけでなく、Gitを使っていて何らかの問題が起きたときにも、自分で対処できるようになります。そうしたGitの地力を鍛えるために、内部構造の把握は重要な要素になってきます。
また、今回の内容を学べば、Gitの大枠を実装することもできてしまうので、興味がある方はぜひ挑戦してみてください。
Gitについての誤解
それでは、まずGitについて多くの人が誤解しているであろう点を挙げておきます。
- commitとは、親commitとの差分を保存しているもの
- branchとは、分かれた枝のこと
- resetとは、commitを無かったことにできるコマンド
私自身も、Gitの内部構造を学ぶ前はこういう理解でした。しかし、これらは実はすべて間違いなのです。
ここからは、Gitがどのようにしてバージョン管理を実現しているかを理解するために、内部構造を紐解いていきます。具体的には、.gitディレクトリの中身について取り扱っていきます。
この記事は参考になりましたか?
- すぐ使いこなせるようになりたい人のためのGit入門連載記事一覧
-
- Gitの内部構造をよく理解して、うまく使おう【基本の仕組みを解説】
- Gitによるチーム開発のいろはを基礎から学ぼう!
- 【Git入門解説】Gitの基本的な使い方をマスターしよう
- この記事の著者
-
登内 雅人(株式会社MIXI)(トノウチ マサト)
Vantageスタジオ みてね事業部 Data Engineering グループ所属。 2020年に株式会社ミクシィ(現MIXI)へ新卒として入社。現在は「家族アルバム みてね」の開発チームにて、AIを活用した自動顔認識系の研究開発やMLOpsの整備などを主に担当している。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
