我们先找到git代码,然后找到git第一版的代码。
https://github.com/git/git/commit/e83c5163316f89bfbde7d9ab23ca2e25604af290
也就是这个,git clone下来。
我们看到第一次提交的文件比较少。
通过make可以生成7个可执行文件,也正说明了初代的git只实现了以下几个功能。
要研究,我们先研究以下他们怎么用。
功能:
1.使用init-db初始化工作目录
2.增加自己写的文件
3.使用./update-cache test.c保存更改至缓存中。这会生成一个index文件,改文件用于保存当前的cache。但是屏幕不会显示。
4.使用write-tree提交缓存中的更改。这会生成一个tree文件,当前的cache中的文件会写入到tree文件中去。命令结果会返回tree文件的sha1值。
5.show-diff,用来比较当前工作目录下的文件和cache中记录的文件的区别。