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