Identifiers & Environment Variables Flashcards
Memorize Git identifiers and environment variables so you'll never have to look them up again.
What does the following Git identifier or environment variable do:
< object >
Indicates the object name for any type of object.
What does the following Git identifier or environment variable do:
< blob >
Indicates a blob object name.
What does the following Git identifier or environment variable do:
< tree >
Indicates a tree object name.
What does the following Git identifier or environment variable do:
< commit >
Indicates a commit object name.
What does the following Git identifier or environment variable do:
< tree-ish >
Indicates a tree, commit or tag object name. A command that takes a argument ultimately wants to operate on a object but automatically dereferences and objects that point at a.
What does the following Git identifier or environment variable do:
< commit-ish >
Indicates a commit or tag object name. A command that takes a argument ultimately wants to operate on a object but automatically dereferences objects that point at a.
What does the following Git identifier or environment variable do:
< type >
Indicates that an object type is required. Currently one of: blob, tree, commit, or tag.
What does the following Git identifier or environment variable do:
< file >
Indicates a filename - almost always relative to the root of the tree structure GIT_INDEX_FILE describes.
What does the following Git identifier or environment variable do:
GIT_INDEX_FILE
This environment allows the specification of an alternate index file. If not specified, the default of $GIT_DIR/index is used.
What does the following Git identifier or environment variable do:
GIT_OBJECT_DIRECTORY
If the object storage directory is specified via this environment variable then the sha1 directories are created underneath - otherwise the default $GIT_DIR/objectsdirectory is used.
What does the following Git identifier or environment variable do:
GIT_ALTERNATE_OBJECT_DIRECTORIES
Due to the immutable nature of git objects, old objects can be archived into shared, read-only directories. This variable specifies a “:” separated (on Windows “;” separated) list of git object directories which can be used to search for git objects. New objects will not be written to these directories.
What does the following Git identifier or environment variable do:
GIT_DIR
If the GIT_DIR environment variable is set then it specifies a path to use instead of the default .git for the base of the repository.
What does the following Git identifier or environment variable do:
GIT_WORK_TREE
Set the path to the working tree. The value will not be used in combination with repositories found automatically in a .git directory (i.e. $GIT_DIR is not set). This can also be controlled by the –work-tree command line option and the core.worktree configuration variable.
What does the following Git identifier or environment variable do:
GIT_CEILING_DIRECTORIES
This should be a colon-separated list of absolute paths. If set, it is a list of directories that git should not chdir up into while looking for a repository directory. It will not exclude the current working directory or a GIT_DIR set on the command line or in the environment. (Useful for excluding slow-loading network directories.)
What does the following Git identifier or environment variable do:
GIT_DISCOVERY_ACROSS_FILESYSTEM
When run in a directory that does not have “.git” repository directory, git tries to find such a directory in the parent directories to find the top of the working tree, but by default it does not cross filesystem boundaries. This environment variable can be set to true to tell git not to stop at filesystem boundaries.
LikeGIT_CEILING_DIRECTORIES, this will not affect an explicit repository directory set via GIT_DIR or on the command line.
What does the following Git identifier or environment variable do:
GIT_MERGE_VERBOSITY
A number controlling the amount of output shown by the recursive merge strategy. Overrides merge.verbosity. See git-merge(1)
What does the following Git identifier or environment variable do:
GIT_PAGER
This environment variable overrides $PAGER. If it is set to an empty string or to the value “cat”, git will not launch a pager. See also the core.pager option in git-config(1).
What does the following Git identifier or environment variable do:
GIT_SSH
If this environment variable is set then git fetch and git push will use this command instead of ssh when they need to connect to a remote system. The $GIT_SSH command will be given exactly two arguments: the username@host (or just host) from the URL and the shell command to execute on that remote system. To pass options to the program that you want to list in GIT_SSH you will need to wrap the program and options into a shell script, then set GIT_SSH to refer to the shell script. Usually it is easier to configure any desired options through your personal .ssh/config file. Please consult your ssh documentation for further details.
What does the following Git identifier or environment variable do:
GIT_ASKPASS
If this environment variable is set, then git commands which need to acquire passwords or passphrases (e.g. for HTTP or IMAP authentication) will call this program with a suitable prompt as command line argument and read the password from its STDOUT. See also the core.askpass option in git-config(1).
What does the following Git identifier or environment variable do:
GIT_FLUSH
If this environment variable is set to “1”, then commands such as git blame (in incremental mode), git rev-list, git log, and git whatchanged will force a flush of the output stream after each commit-oriented record have been flushed. If this variable is set to “0”, the output of these commands will be done using completely buffered I/O. If this environment variable is not set, git will choose buffered or record-oriented flushing based on whether stdout appears to be redirected to a file or not.
What does the following Git identifier or environment variable do:
GIT_TRACE
If this variable is set to “1”, “2” or “true” (comparison is case insensitive), git will print trace: messages on stderr telling about alias expansion, built-in command execution and external command execution. If this variable is set to an integer value greater than 1 and lower than 10 (strictly) then git will interpret this value as an open file descriptor and will try to write the trace messages into this file descriptor. Alternatively, if this variable is set to an absolute path (starting with a / character), git will interpret this as a file path and will try to write the trace messages into it.
Name the Git identifier or variable that does the following:
Indicates the object name for any type of object.
< object >
Name the Git identifier or variable that does the following:
Indicates a blob object name.
< blob >
Name the Git identifier or variable that does the following:
Indicates a tree object name.
< tree >
Name the Git identifier or variable that does the following:
Indicates a commit object name.
< commit >
Name the Git identifier or variable that does the following:
Indicates a tree, commit or tag object name. A command that takes a argument ultimately wants to operate on a object but automatically dereferences and objects that point at a.
< tree-ish >
Name the Git identifier or variable that does the following:
Indicates a commit or tag object name. A command that takes a argument ultimately wants to operate on a object but automatically dereferences objects that point at a.
< commit-ish >
Name the Git identifier or variable that does the following:
Indicates that an object type is required. Currently one of: blob, tree, commit, or tag.
< type >
Name the Git identifier or variable that does the following:
Indicates a filename - almost always relative to the root of the tree structure GIT_INDEX_FILE describes.
< file >
Name the Git identifier or variable that does the following:
This environment allows the specification of an alternate index file. If not specified, the default of $GIT_DIR/index is used.
GIT_INDEX_FILE
Name the Git identifier or variable that does the following:
If the object storage directory is specified via this environment variable then the sha1 directories are created underneath - otherwise the default $GIT_DIR/objectsdirectory is used.
GIT_OBJECT_DIRECTORY
Name the Git identifier or variable that does the following:
Due to the immutable nature of git objects, old objects can be archived into shared, read-only directories. This variable specifies a “:” separated (on Windows “;” separated) list of git object directories which can be used to search for git objects. New objects will not be written to these directories.
GIT_ALTERNATE_OBJECT_DIRECTORIES
Name the Git identifier or variable that does the following:
If the GIT_DIR environment variable is set then it specifies a path to use instead of the default .git for the base of the repository.
GIT_DIR
Name the Git identifier or variable that does the following:
Set the path to the working tree. The value will not be used in combination with repositories found automatically in a .git directory (i.e. $GIT_DIR is not set). This can also be controlled by the –work-tree command line option and the core.worktree configuration variable.
GIT_WORK_TREE
Name the Git identifier or variable that does the following:
This should be a colon-separated list of absolute paths. If set, it is a list of directories that git should not chdir up into while looking for a repository directory. It will not exclude the current working directory or a GIT_DIR set on the command line or in the environment. (Useful for excluding slow-loading network directories.)
GIT_CEILING_DIRECTORIES
Name the Git identifier or variable that does the following:
When run in a directory that does not have “.git” repository directory, git tries to find such a directory in the parent directories to find the top of the working tree, but by default it does not cross filesystem boundaries. This environment variable can be set to true to tell git not to stop at filesystem boundaries. LikeGIT_CEILING_DIRECTORIES, this will not affect an explicit repository directory set via GIT_DIR or on the command line.
GIT_DISCOVERY_ACROSS_FILESYSTEM
Name the Git identifier or variable that does the following:
A number controlling the amount of output shown by the recursive merge strategy. Overrides merge.verbosity. See git-merge(1)
GIT_MERGE_VERBOSITY
Name the Git identifier or variable that does the following:
This environment variable overrides $PAGER. If it is set to an empty string or to the value “cat”, git will not launch a pager. See also the core.pager option in git-config(1).
GIT_PAGER
Name the Git identifier or variable that does the following:
If this environment variable is set then git fetch and git push will use this command instead of ssh when they need to connect to a remote system. The $GIT_SSH command will be given exactly two arguments: the username@host (or just host) from the URL and the shell command to execute on that remote system. To pass options to the program that you want to list in GIT_SSH you will need to wrap the program and options into a shell script, then set GIT_SSH to refer to the shell script. Usually it is easier to configure any desired options through your personal .ssh/config file. Please consult your ssh documentation for further details.
GIT_SSH
Name the Git identifier or variable that does the following:
If this environment variable is set, then git commands which need to acquire passwords or passphrases (e.g. for HTTP or IMAP authentication) will call this program with a suitable prompt as command line argument and read the password from its STDOUT. See also the core.askpass option in git-config(1).
GIT_ASKPASS
Name the Git identifier or variable that does the following:
If this environment variable is set to “1”, then commands such as git blame (in incremental mode), git rev-list, git log, and git whatchanged will force a flush of the output stream after each commit-oriented record have been flushed. If this variable is set to “0”, the output of these commands will be done using completely buffered I/O. If this environment variable is not set, git will choose buffered or record-oriented flushing based on whether stdout appears to be redirected to a file or not.
GIT_FLUSH
Name the Git identifier or variable that does the following:
If this variable is set to “1”, “2” or “true” (comparison is case insensitive), git will print trace: messages on stderr telling about alias expansion, built-in command execution and external command execution. If this variable is set to an integer value greater than 1 and lower than 10 (strictly) then git will interpret this value as an open file descriptor and will try to write the trace messages into this file descriptor. Alternatively, if this variable is set to an absolute path (starting with a / character), git will interpret this as a file path and will try to write the trace messages into it.
GIT_TRACE