In Git, a blob (binary large object) is a type of Git object that stores the contents of a file.
A blob object contains the binary data of a file, but does not contain any metadata such as
the file name or permissions. The structure of a Git blob object is as follows:
The Commit object is a data structure used to represent a specific version of a project’s
files at a particular point in time. In Git, the commit object is a fundamental data structure
that is used to track changes to a repository’s files over time. Whenever a developer makes
changes to the files in a repository, they create a new commit object that records those changes.
In a Git commit, the author signature contains the name, email address, timestamp, and timezone
of the person who authored the commit. This information is stored in a specific format, which
consists of the following fields:
In Git, a tree object is used to represent the state of a directory at a specific point in time.
It stores information about the files and directories within that directory, including their names,
permissions, and the IDs of the objects that represent their contents.