All of the inner workings aside, you can see what I meant by a simple
test: try to add an empty folder to a git repo. There will be no
changes to commit. This is what I mean by not tracking directories -
there is no way to tell it to track a directory which does not
actually contain any content. While it is of course aware of
directories, they are part of the path to the content it tracks, not
content tracked in and of themselves.
On Jul 30, 9:21 am, Rick DeNatale <rick.denat...@gmail.com> wrote:
> On Thu, Jul 30, 2009 at 9:49 AM, Jeffrey<jefr...@gmail.com> wrote:
> > Git doesn't really track folders - it just tracks files.
> If I understand it correctly, git DOES track folders/directories. In
> most operating systems, directories are really just special files
> containing pointers to and meta-information about other files. Git can
> be understood as a special kind of file system which keeps the history
> of it's contents, and not just the current contents.
> Git uses three type of objects, blobs, trees, and commits all of which
> are identified by the SHA1 hash of their contents, which are used as a
> kind of pointer value.
> Blobs represent the leaf files, at some point in time.
> Trees represent a directory at some point in time, they contain a list
> of the SHA1 pointer to each blob or tree (subdirectory) in the
> directory, along with its file name, and mode.
> Commits point to a particular tree, and to 0 or more parent commits.
> What git doesn't do is track files OR directories directly by name.
> Rick DeNatale
You received this message because you are subscribed to the Google Groups "Git
for human beings" group.
To post to this group, send email to firstname.lastname@example.org
To unsubscribe from this group, send email to
For more options, visit this group at