15
Sets up the normal git environment variables and a few helper functions
16
(currently just "die()"), and returns OK if it all looks like a git archive.
17
So, to make the rest of the git scripts more careful and readable,
20
-------------------------------------------------
21
. git-sh-setup || die "Not a git archive"
22
-------------------------------------------------
15
This is not a command the end user would want to run. Ever.
16
This documentation is meant for people who are studying the
17
Porcelain-ish scripts and/or are writing new ones.
19
The `git-sh-setup` scriptlet is designed to be sourced (using
20
`.`) by other shell scripts to set up some variables pointing at
21
the normal git directories and a few helper shell functions.
23
Before sourcing it, your script should set up a few variables;
24
`USAGE` (and `LONG_USAGE`, if any) is used to define message
25
given by `usage()` shell function. `SUBDIRECTORY_OK` can be set
26
if the script can run from a subdirectory of the working tree
27
(some commands do not).
29
The scriptlet sets `GIT_DIR` and `GIT_OBJECT_DIRECTORY` shell
30
variables, but does *not* export them to the environment.
36
exit after emitting the supplied error message to the
37
standard error stream.
40
die with the usage message.
43
set the message that will be recorded to describe the
44
end-user action in the reflog, when the script updates a
48
outputs `true` or `false` to the standard output stream
49
to indicate if the repository is a bare repository
50
(i.e. without an associated working tree).
53
runs chdir to the toplevel of the working tree.
56
checks if the repository is a bare repository, and dies
57
if so. Used by scripts that require working tree