はじめまして。1ヶ月でエンジニアになろうとした山浦です。 先日Gitのことを突っ込んで調べる機会があり、Gitの仕組みって面白いねということを同僚に話していたら「面白いね。ところでGitって実装できる?実装できないと分かったとは言えないよね?」となぜか煽られるということがありました。 そうか、実装できないと分かったとは言えないのか、それも一理あるかもしれない。そう思い、Gitの仕組みを実装できるレベルまで掘り下げて調べてみました。 今回は実装はしないものの(過度に記事が複雑になるので)、Gitの根幹である git add コマンドと git commit コマンドの裏側で起こっていることを紹介します。 差分かスナップショットか? ここで早速クイズです。 コミットで保存されているのはソースコードの差分でしょうか?スナップショットでしょうか? 今回の記事の中で解説していきますので、少し考えなが
![Gitのコミットの裏側で起こっていること - LIVESENSE ENGINEER BLOG](https://cdn-ak-scissors.b.st-hatena.com/image/square/d7626de401b4ec4420e23214714ad012f1399376/height=288;version=1;width=512/https%3A%2F%2Fcdn.image.st-hatena.com%2Fimage%2Fscale%2F422ab5f512a680cfcd2a47ab5485827d02b6b5b1%2Fbackend%3Dimagemagick%3Bversion%3D1%3Bwidth%3D1300%2Fhttps%253A%252F%252Fcdn-ak.f.st-hatena.com%252Fimages%252Ffotolife%252Fl%252Flivesense-made%252F20170813%252F20170813134138.png)