mirror of
https://github.com/git/git
synced 2024-08-25 02:35:46 +00:00
![Junio C Hamano](/assets/img/avatar_default.png)
The synopsys text and the usage string of subcommands that read list of things from the standard input are often shown like this: git gostak [--distim] < <list-of-doshes> This is problematic in a number of ways: * The way to use these commands is more often to feed them the output from another command, not feed them from a file. * Manual pages outside Git, commands that operate on the data read from the standard input, e.g "sort", "grep", "sed", etc., are not described with such a "< redirection-from-file" in their synopsys text. Our doing so introduces inconsistency. * We do not insist on where the output should go, by saying git gostak [--distim] < <list-of-doshes> > <output> * As it is our convention to enclose placeholders inside <braket>, the redirection operator followed by a placeholder filename becomes very hard to read, both in the documentation and in the help text. Let's clean them all up, after making sure that the documentation clearly describes the modes that take information from the standard input and what kind of things are expected on the input. [jc: stole example for fmt-merge-msg from Jonathan] Helped-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
66 lines
2.1 KiB
Plaintext
66 lines
2.1 KiB
Plaintext
git-hash-object(1)
|
|
==================
|
|
|
|
NAME
|
|
----
|
|
git-hash-object - Compute object ID and optionally creates a blob 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.
|
|
This is used by 'git cvsimport' to update the index
|
|
without modifying files in the work tree. When <type> is not
|
|
specified, it defaults to "blob".
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
-t <type>::
|
|
Specify the type (default: "blob").
|
|
|
|
-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 it were located at the given path. The location of
|
|
file does not directly influence on the hash value, but path is
|
|
used to determine what Git filters should be applied to the object
|
|
before it can be placed to the object database, and, as 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
|