summaryrefslogtreecommitdiffstats
path: root/Documentation/git-hash-object.txt
blob: ef4719ae41c700f5dde933a69ae6c8cf8c5fd3bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
git-hash-object(1)
==================

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


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

DESCRIPTION
-----------
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
-------

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

-w::
	Actually write the object into the object database.

--stdin::
	Read the object from standard input instead of from a file.

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

--path::
	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.

--no-filters::
	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.

--literally::
	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
---
Part of the linkgit:git[1] suite