Writing a commit object to the database
Now that we have created both blob and tree objects, the next step in the data model is to create the actual commit object.
Getting ready
Again, we'll use the repository created in the previous examples with the different objects written to the database.
How to do it...
As we saw in Chapter 1, Navigating Git, a commit object consists of the author and committer information, a root tree object, a parent commit (except for the first commit), and a commit message. We have the root tree object generated in the last example, and Git will pick up the author and committer information from the configuration. So, all we need to do is create a commit message and write the commit object. We can do this for each of the tree objects we created previously:
$ echo 'Initial commit - Good contents' | git commit-tree 4c4493f8 40f4783c37e7cb9d07a4a71100acf4c474a376b0 $ echo 'Second commit - Better contents' | git commit-tree -p \ 40f4783 2b969743 991ad244c6fdc84a983543cd8f2e89deca0eff29...