git-hash-object(1) — Linux manual page


GIT-HASH-OBJECT(1)             Git Manual             GIT-HASH-OBJECT(1)

NAME         top

       git-hash-object - Compute object ID and optionally create an
       object from a file

SYNOPSIS         top

       git hash-object [-t <type>] [-w] [--path=<file> | --no-filters]
                       [--stdin [--literally]] [--] <file>...
       git hash-object [-t <type>] [-w] --stdin-paths [--no-filters]

DESCRIPTION         top

       Computes the object ID value for an object with specified type
       with the contents of the named file (which can be outside of the
       work tree), and optionally writes the resulting object into the
       object database. Reports its object ID to its standard output.
       When <type> is not specified, it defaults to "blob".

OPTIONS         top

       -t <type>
           Specify the type of object to be created (default: "blob").
           Possible values are commit, tree, blob, and tag.

           Actually write the object into the object database.

           Read the object from standard input instead of from a file.

           Read file names from the standard input, one per line,
           instead of from the command-line.

           Hash object as if it were located at the given path. The
           location of the file does not directly influence the hash
           value, but the path is used to determine which Git filters
           should be applied to the object before it can be placed in
           the object database. As a result of applying filters, the
           actual blob put into the object database may differ from the
           given file. This option is mainly useful for hashing
           temporary files located outside of the working directory or
           files read from stdin.

           Hash the contents as is, ignoring any input filter that would
           have been chosen by the attributes mechanism, including the
           end-of-line conversion. If the file is read from standard
           input then this is always implied, unless the --path option
           is given.

           Allow --stdin to hash any garbage into a loose object which
           might not otherwise pass standard object parsing or git-fsck
           checks. Useful for stress-testing Git itself or reproducing
           characteristics of corrupt or bogus objects encountered in
           the wild.

GIT         top

       Part of the git(1) suite

COLOPHON         top

       This page is part of the git (Git distributed version control
       system) project.  Information about the project can be found at
       ⟨⟩.  If you have a bug report for this manual
       page, see ⟨⟩.  This page was obtained
       from the project's upstream Git repository
       ⟨⟩ on 2023-12-22.  (At that time,
       the date of the most recent commit that was found in the
       repository was 2023-12-20.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

Git         2023-12-20             GIT-HASH-OBJECT(1)

Pages that refer to this page: git(1)git-merge-tree(1)git-mktag(1)git-replace(1)