Skip to main content

Module gitcmd

Module gitcmd 

Source
Expand description

How the daemon runs git, the one program it starts for network transport (fetch, push) and for a few plumbing reads.

Git reads configuration from the environment, the system, the user’s home and the repository, and any of them can change which remote it talks to (url.<x>.insteadOf), what it runs (core.sshCommand, a credential helper, hooks) or where it connects (http.proxy). In cooperative mode that is the developer’s configuration, which agents running as the developer can write. So the child gets an environment built here and nothing else: no system configuration, a home of the daemon’s own (<daemon home>/git-home, where an administrator may put credentials), no hooks, and a time limit after which its whole process group is killed.

Structs§

Git

Enums§

Failure
Why a git command did not succeed.

Constants§

DEFAULT_TIMEOUT
How long a git command may run before it is killed (network included).

Functions§

branch_ok
A branch name as git takes one: git check-ref-format --branch, after Lonca’s own narrower test. Run with the same clean environment.