revision: avoid hitting packfiles when commits are in commit-graph
[alt-git.git] / Documentation / git-hash-object.txt
blobdf9e2c58bdbc5f31edaf25577df744868e16f3de
1 git-hash-object(1)
2 ==================
4 NAME
5 ----
6 git-hash-object - Compute object ID and optionally creates a blob from a file
9 SYNOPSIS
10 --------
11 [verse]
12 'git hash-object' [-t <type>] [-w] [--path=<file>|--no-filters] [--stdin [--literally]] [--] <file>...
13 'git hash-object' [-t <type>] [-w] --stdin-paths [--no-filters]
15 DESCRIPTION
16 -----------
17 Computes the object ID value for an object with specified type
18 with the contents of the named file (which can be outside of the
19 work tree), and optionally writes the resulting object into the
20 object database.  Reports its object ID to its standard output.
21 When <type> is not specified, it defaults to "blob".
23 OPTIONS
24 -------
26 -t <type>::
27         Specify the type (default: "blob").
29 -w::
30         Actually write the object into the object database.
32 --stdin::
33         Read the object from standard input instead of from a file.
35 --stdin-paths::
36         Read file names from the standard input, one per line, instead
37         of from the command-line.
39 --path::
40         Hash object as it were located at the given path. The location of
41         file does not directly influence on the hash value, but path is
42         used to determine what Git filters should be applied to the object
43         before it can be placed to the object database, and, as result of
44         applying filters, the actual blob put into the object database may
45         differ from the given file. This option is mainly useful for hashing
46         temporary files located outside of the working directory or files
47         read from stdin.
49 --no-filters::
50         Hash the contents as is, ignoring any input filter that would
51         have been chosen by the attributes mechanism, including the end-of-line
52         conversion. If the file is read from standard input then this
53         is always implied, unless the `--path` option is given.
55 --literally::
56         Allow `--stdin` to hash any garbage into a loose object which might not
57         otherwise pass standard object parsing or git-fsck checks. Useful for
58         stress-testing Git itself or reproducing characteristics of corrupt or
59         bogus objects encountered in the wild.
61 GIT
62 ---
63 Part of the linkgit:git[1] suite